From patchwork Wed Jul 17 11:58:49 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nithin Dabilpuram X-Patchwork-Id: 56608 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1D7D81B94F; Wed, 17 Jul 2019 13:59:12 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 4C7C21B203 for ; Wed, 17 Jul 2019 13:59:10 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x6HBtwhu008022; Wed, 17 Jul 2019 04:59:08 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-type; s=pfpt0818; bh=UQN86YZlglGV4VqKnXqUMPd+PflosqCksSw9yokMetI=; b=FfWFswOv9bFvJZAXvOAWw5WLjUuOl2GoL83LP0lfu7Fij0q6FgqyFjf4+piIVYQ4SIKl b2mBdJirARrkA0wvETeJ7I0x2pkufbf3uOHgbxtF5m8Lw9kjGcatZgPKBDEvhBbMMXLv SKaFQQ9nBhQvBNcR1Q9WcpjV3gdhsmiK4UbPwwaHvAvDHy6a6vv7TjQwwUgxRiW89Bnf Q0fmZn1bnpYG0rzzvwlvTpV61J2MoHenAiokLV2Lz0sbZ8OEKDFvtSQug7B7Q6ppwKxZ x20rLRAVjcMOmbrTiI6X420rJNKo3MgTdewg4XkhffdF8mB3OE0tYCeYFCepyxLBkLEn cQ== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0b-0016f401.pphosted.com with ESMTP id 2ts0a27e55-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Wed, 17 Jul 2019 04:59:08 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Wed, 17 Jul 2019 04:59:06 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Wed, 17 Jul 2019 04:59:06 -0700 Received: from hyd1588t430.marvell.com (unknown [10.29.52.204]) by maili.marvell.com (Postfix) with ESMTP id 6DC0D3F7040; Wed, 17 Jul 2019 04:59:03 -0700 (PDT) From: Nithin Dabilpuram To: Hyong Youb Kim , David Marchand , Thomas Monjalon , "Ferruh Yigit" CC: , John Daley , Shahed Shaikh , , Nithin Dabilpuram Date: Wed, 17 Jul 2019 17:28:49 +0530 Message-ID: <20190717115852.171416-1-ndabilpuram@marvell.com> X-Mailer: git-send-email 2.8.4 MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:5.22.84,1.0.8 definitions=2019-07-17_04:2019-07-17,2019-07-17 signatures=0 Subject: [dpdk-dev] [PATCH 0/3] vfio: fix broken msix interrupt initialization X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" A final patch for below mentioned RFC patch discussions. [RFC PATCH v3 1/3] vfio: revert change that does intr eventfd setup at probe http://mails.dpdk.org/archives/dev/2019-July/138358.html [RFC PATCH v3 2/3] eal: add mask and unmask interrupt APIs http://mails.dpdk.org/archives/dev/2019-July/138357.html [RFC PATCH v3 3/3] drivers/net: use unmask API in interrupt handlers http://mails.dpdk.org/archives/dev/2019-July/138359.html Please also refer to below discussions http://mails.dpdk.org/archives/dev/2019-July/138184.html http://mails.dpdk.org/archives/dev/2019-July/138113.html This patch set basically reverts vfio patch that moves eventfd setup to probe time (1/3) because msix initialization is broken. It adds new ack interrupt api for purposes of simple and light weight ack method and also to avoid race conditions that was the root cause of this discussion. Nithin Dabilpuram (3): vfio: revert change that does intr eventfd setup at probe eal: add ack interrupt API drivers/net: use ack API in interrupt handlers drivers/bus/pci/linux/pci_vfio.c | 78 ++++--- drivers/net/atlantic/Makefile | 1 + drivers/net/atlantic/atl_ethdev.c | 2 +- drivers/net/atlantic/meson.build | 2 + drivers/net/avp/avp_ethdev.c | 2 +- drivers/net/avp/meson.build | 1 + drivers/net/axgbe/Makefile | 1 + drivers/net/axgbe/axgbe_ethdev.c | 4 +- drivers/net/axgbe/meson.build | 1 + drivers/net/bnx2x/bnx2x_ethdev.c | 2 +- drivers/net/bnx2x/meson.build | 1 + drivers/net/e1000/em_ethdev.c | 4 +- drivers/net/e1000/igb_ethdev.c | 6 +- drivers/net/fm10k/fm10k_ethdev.c | 6 +- drivers/net/fm10k/meson.build | 1 + drivers/net/i40e/i40e_ethdev.c | 2 +- drivers/net/iavf/iavf_ethdev.c | 2 +- drivers/net/ice/Makefile | 1 + drivers/net/ice/ice_ethdev.c | 4 +- drivers/net/ice/meson.build | 1 + drivers/net/ixgbe/ixgbe_ethdev.c | 6 +- drivers/net/nfp/nfp_net.c | 2 +- drivers/net/qede/Makefile | 1 + drivers/net/qede/meson.build | 2 + drivers/net/qede/qede_ethdev.c | 8 +- drivers/net/sfc/sfc_intr.c | 4 +- drivers/net/virtio/virtio_ethdev.c | 16 +- drivers/net/vmxnet3/vmxnet3_ethdev.c | 2 +- lib/librte_eal/common/include/rte_interrupts.h | 22 ++ lib/librte_eal/freebsd/eal/eal_interrupts.c | 9 + lib/librte_eal/linux/eal/eal_interrupts.c | 282 ++++++++++++++++++++----- lib/librte_eal/rte_eal_version.map | 1 + 32 files changed, 360 insertions(+), 117 deletions(-)