From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 10A85A04DE; Fri, 23 Oct 2020 12:00:46 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6041BA932; Fri, 23 Oct 2020 12:00:05 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id E1B6A72EA; Fri, 23 Oct 2020 11:59:59 +0200 (CEST) IronPort-SDR: 2+sHqUbnZAdffcbZyYZLWpg/hZOMIFBqNQBlGggral4GdO20wBN/rV/2GUSpI3kqZhzsw4FUyn HZxmUyNJEyZw== X-IronPort-AV: E=McAfee;i="6000,8403,9782"; a="229288206" X-IronPort-AV: E=Sophos;i="5.77,407,1596524400"; d="scan'208";a="229288206" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Oct 2020 02:59:57 -0700 IronPort-SDR: bUp17+MxXeOmDkS8+t81pYDFzznml0pKgP9cgumJRQAChLcgXTy8cCpFpfd0DvgA7Y4bwYY3uF KHYgKW2LngEg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,407,1596524400"; d="scan'208";a="359556508" Received: from unknown (HELO sh_lab5_1.sh.intel.com) ([10.238.175.190]) by FMSMGA003.fm.intel.com with ESMTP; 23 Oct 2020 02:59:56 -0700 From: Tianfei zhang To: dev@dpdk.org , rosen.xu@intel.com, qi.z.zhang@intel.com Cc: Wei Huang , stable@dpdk.org, Tianfei zhang Date: Fri, 23 Oct 2020 04:59:56 -0400 Message-Id: <1603443599-7356-3-git-send-email-tianfei.zhang@intel.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1603443599-7356-1-git-send-email-tianfei.zhang@intel.com> References: <1600846213-18093-1-git-send-email-tianfei.zhang@intel.com> <1603443599-7356-1-git-send-email-tianfei.zhang@intel.com> Subject: [dpdk-dev] [PATCH v3 2/5] raw/ifpga/base: handle unsupported interrupt type 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: Wei Huang Handle unsupported interrupt type requests properly, on unsupported interrupt case: 'ifpga_unregister_msix_irq()' returns success, 'ifpga_register_msix_irq()' return failure. Fixes: e0a1aafe ("raw/ifpga: introduce IRQ functions") Cc: stable@dpdk.org Signed-off-by: Wei Huang Signed-off-by: Tianfei zhang --- drivers/raw/ifpga/ifpga_rawdev.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/raw/ifpga/ifpga_rawdev.c b/drivers/raw/ifpga/ifpga_rawdev.c index 76b0f8a5b..374a7ff1d 100644 --- a/drivers/raw/ifpga/ifpga_rawdev.c +++ b/drivers/raw/ifpga/ifpga_rawdev.c @@ -1343,6 +1343,8 @@ ifpga_unregister_msix_irq(enum ifpga_irq_type type, intr_handle = &ifpga_irq_handle[0]; else if (type == IFPGA_AFU_IRQ) intr_handle = &ifpga_irq_handle[vec_start + 1]; + else + return 0; rte_intr_efd_disable(intr_handle); @@ -1372,8 +1374,11 @@ ifpga_register_msix_irq(struct rte_rawdev *dev, int port_id, if (type == IFPGA_FME_IRQ) { intr_handle = &ifpga_irq_handle[0]; count = 1; - } else if (type == IFPGA_AFU_IRQ) + } else if (type == IFPGA_AFU_IRQ) { intr_handle = &ifpga_irq_handle[vec_start + 1]; + } else { + return -EINVAL; + } intr_handle->type = RTE_INTR_HANDLE_VFIO_MSIX; -- 2.17.1