From patchwork Mon Nov 14 10:39:44 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xing, Beilei" X-Patchwork-Id: 119818 X-Patchwork-Delegate: qi.z.zhang@intel.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 217C0A0032; Mon, 14 Nov 2022 11:39:58 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AF54940150; Mon, 14 Nov 2022 11:39:57 +0100 (CET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mails.dpdk.org (Postfix) with ESMTP id E86324014F for ; Mon, 14 Nov 2022 11:39:55 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1668422396; x=1699958396; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=OYYHvNtAYXnv45d16eIg0FltMR8aKQAdPAVnOtBxTPo=; b=JHsORYFmxuMWnWnPj5sd5nKWSQlAyjg8266lCDhQtsUht9Ns5MrgJGGn 3aIGfdsUm6Lo3v3xIjU2ZTWlLmBM+r+NlZ1pNbm6oHChVElzy4Me4I9iI fhhpa+CLndZDUTRhr1pW8oeLrULFfOc0cg1IS1ExHbBpY8GtSGzLOmR0H e0T8CPR9ugWbNvNgOPNJ8+NjWNc/5TGEcmQlFLS12RFOUKvFtOZqFKmns vg2mq7LTXFjpPvZOzLHxPCz1kJTqyz0Q0+AUxFipFpONtiDDA3KJSJx1l C2blB6qENfgXA120/v9aUcJPOa+76WyrHv0wlue9fYUCmJyOPaKlMZz0W Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="311941790" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="311941790" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Nov 2022 02:39:55 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="744088362" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="744088362" Received: from dpdk-beileix-3.sh.intel.com ([10.67.110.253]) by fmsmga002.fm.intel.com with ESMTP; 14 Nov 2022 02:39:53 -0800 From: beilei.xing@intel.com To: jingjing.wu@intel.com, qi.z.zhang@intel.com Cc: dev@dpdk.org, Beilei Xing Subject: [PATCH] net/idpf: need to stop device when closing device Date: Mon, 14 Nov 2022 10:39:44 +0000 Message-Id: <20221114103944.65290-1-beilei.xing@intel.com> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Beilei Xing This patch stops device at the beginning of idpf_dev_close. Fixes: 14aa6ed8f2ec ("net/idpf: support device start and stop") Signed-off-by: Beilei Xing Acked-by: Qi Zhang --- drivers/net/idpf/idpf_ethdev.c | 7 +++++++ drivers/net/idpf/idpf_ethdev.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/drivers/net/idpf/idpf_ethdev.c b/drivers/net/idpf/idpf_ethdev.c index 50aac65daf..5a141ba035 100644 --- a/drivers/net/idpf/idpf_ethdev.c +++ b/drivers/net/idpf/idpf_ethdev.c @@ -605,6 +605,9 @@ idpf_dev_stop(struct rte_eth_dev *dev) { struct idpf_vport *vport = dev->data->dev_private; + if (vport->stopped == 1) + return 0; + idpf_vc_ena_dis_vport(vport, false); idpf_stop_queues(dev); @@ -613,6 +616,8 @@ idpf_dev_stop(struct rte_eth_dev *dev) idpf_vc_dealloc_vectors(vport); + vport->stopped = 1; + return 0; } @@ -622,6 +627,8 @@ idpf_dev_close(struct rte_eth_dev *dev) struct idpf_vport *vport = dev->data->dev_private; struct idpf_adapter *adapter = vport->adapter; + idpf_dev_stop(dev); + idpf_vc_destroy_vport(vport); rte_free(vport->rss_lut); diff --git a/drivers/net/idpf/idpf_ethdev.h b/drivers/net/idpf/idpf_ethdev.h index ccdf4abe40..bfe27a5267 100644 --- a/drivers/net/idpf/idpf_ethdev.h +++ b/drivers/net/idpf/idpf_ethdev.h @@ -127,6 +127,8 @@ struct idpf_vport { struct idpf_chunks_info chunks_info; uint16_t devarg_id; + + bool stopped; }; struct idpf_adapter {