From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rasesh Mody Subject: [PATCH 7/8] net/qede/base: fix to handle acquire request from VF Date: Fri, 2 Dec 2016 22:35:08 -0800 Message-ID: <1480746909-25686-7-git-send-email-Rasesh.Mody@cavium.com> References: <1480746909-25686-1-git-send-email-Rasesh.Mody@cavium.com> Mime-Version: 1.0 Content-Type: text/plain Cc: , Rasesh Mody To: Return-path: Received: from mx0b-0016ce01.pphosted.com (mx0a-0016ce01.pphosted.com [67.231.148.157]) by dpdk.org (Postfix) with ESMTP id CDDCF68A5 for ; Sat, 3 Dec 2016 07:35:38 +0100 (CET) In-Reply-To: <1480746909-25686-1-git-send-email-Rasesh.Mody@cavium.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add a check and fail the VF's probe request if VF is already in VF_ACQUIRED state. Fixes: 22d07d93 ("net/qede/base: update") Signed-off-by: Rasesh Mody --- drivers/net/qede/base/ecore_sriov.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/net/qede/base/ecore_sriov.c b/drivers/net/qede/base/ecore_sriov.c index 12552966..c2fbee87 100644 --- a/drivers/net/qede/base/ecore_sriov.c +++ b/drivers/net/qede/base/ecore_sriov.c @@ -1459,6 +1459,18 @@ static void ecore_iov_vf_mbx_acquire(struct ecore_hwfn *p_hwfn, pfdev_info->major_fp_hsi = ETH_HSI_VER_MAJOR; pfdev_info->minor_fp_hsi = ETH_HSI_VER_MINOR; + /* TODO - not doing anything is bad since we'll assert, but this isn't + * necessarily the right behavior - perhaps we should have allowed some + * versatility here. + */ + if (vf->state != VF_FREE && + vf->state != VF_STOPPED) { + DP_VERBOSE(p_hwfn, ECORE_MSG_IOV, + "VF[%d] sent ACQUIRE but is already in state %d - fail request\n", + vf->abs_vf_id, vf->state); + goto out; + } + /* Validate FW compatibility */ if (req->vfdev_info.eth_fp_hsi_major != ETH_HSI_VER_MAJOR) { if (req->vfdev_info.capabilities & -- 2.11.0.rc1