From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 683EAC7618B for ; Tue, 23 Jul 2019 08:04:34 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 0867E2070B for ; Tue, 23 Jul 2019 08:04:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0867E2070B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id EDC931BFC5; Tue, 23 Jul 2019 10:04:30 +0200 (CEST) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 68C631BFC3 for ; Tue, 23 Jul 2019 10:04:29 +0200 (CEST) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C8FFC8553D; Tue, 23 Jul 2019 08:04:28 +0000 (UTC) Received: from dmarchan.remote.csb (ovpn-204-177.brq.redhat.com [10.40.204.177]) by smtp.corp.redhat.com (Postfix) with ESMTP id A63481001DD7; Tue, 23 Jul 2019 08:04:26 +0000 (UTC) From: David Marchand To: dev@dpdk.org Cc: thomas@monjalon.net, hyonkim@cisco.com, ferruh.yigit@intel.com, jerinj@marvell.com, johndale@cisco.com, shshaikh@marvell.com Date: Tue, 23 Jul 2019 10:04:16 +0200 Message-Id: <1563869059-12618-1-git-send-email-david.marchand@redhat.com> In-Reply-To: <20190717115852.171416-1-ndabilpuram@marvell.com> References: <20190717115852.171416-1-ndabilpuram@marvell.com> X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Tue, 23 Jul 2019 08:04:28 +0000 (UTC) Subject: [dpdk-dev] [PATCH v5 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" >From Nithin original cover letter: 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. Changelog since v4: - -- David Marchand 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/Makefile | 1 + 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 | 2 + drivers/net/bnx2x/Makefile | 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/Makefile | 1 + drivers/net/fm10k/fm10k_ethdev.c | 6 +- drivers/net/fm10k/meson.build | 2 + 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 | 2 + 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 | 20 ++ lib/librte_eal/freebsd/eal/eal_interrupts.c | 9 + lib/librte_eal/linux/eal/eal_interrupts.c | 271 +++++++++++++++++++++---- lib/librte_eal/rte_eal_version.map | 1 + 35 files changed, 359 insertions(+), 111 deletions(-) -- 1.8.3.1