From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id 21E185A6A for ; Wed, 17 Oct 2018 03:54:51 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 9B19422165; Tue, 16 Oct 2018 21:54:50 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Tue, 16 Oct 2018 21:54:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; s=mesmtp; bh=Dg34jGBTBZ nPtF5zxe4fAGztSYVBGO8PtrELERQytgA=; b=YJN2PSn+ODjjpfAQSDvnaDr/tX PlLlrc0p4Ai1YkxcBxaEJYz1RwOZfsPQcT9siHvEaPJUag7XvCBCZW+DMtrms0Uf Ir5R8D9q4inXgUCtgRLGByzulMjcUKCgE8m9Pm8DuiarZ0AUwqkqMWPNHpwhXlr2 aHqW8kouXJVg6qYUY= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=Dg34jGBTBZnPtF5zxe4fAGztSYVBGO8PtrELERQytgA=; b=D5Lid582 iYUt4Q/oCBDCJWbm3nzMqU7YfZ6RvJYbkaeCPd8KUd13DWB1BQTNLlgygY6Babjv wthBHkrS+IPqtJb6FI1KdlBzRKN9tMPu9/GEzx/0Qh2jwssy8Ygw7FPgKuB3VZl+ lacdtTik2ceqB6L/g4r2e1YVPilrM679kRb0bATBPnWeD8+9Ihd1pCYLj4vslEPq /NisgowIRrQIdV4UwfGhmqxsnPm8ttfTptnt13cZn+nqXDfzPk8hJsFnp3WAojSs An7e7l9wB/0hmgFuKzeI67h2Mgpw3EaPl3fpcFupZ0ZBFPGAZcQ14UMsXNKsUFdw fXuZ85etjqXkTg== X-ME-Sender: X-ME-Proxy: Received: from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id CF0B0102EA; Tue, 16 Oct 2018 21:54:49 -0400 (EDT) From: Thomas Monjalon To: ferruh.yigit@intel.com, arybchenko@solarflare.com Cc: dev@dpdk.org, ophirmu@mellanox.com Date: Wed, 17 Oct 2018 03:54:47 +0200 Message-Id: <20181017015450.15783-2-thomas@monjalon.net> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20181017015450.15783-1-thomas@monjalon.net> References: <20180907233929.21950-1-thomas@monjalon.net> <20181017015450.15783-1-thomas@monjalon.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v3 1/4] app/testpmd: allow detaching a port not closed 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: , X-List-Received-Date: Wed, 17 Oct 2018 01:54:51 -0000 The testpmd application aim is for testing; so order of operations should not be enforced. There was a test to forbid detaching before closing a port. However, it may interesting to test what happens in such case. It is possible for a PMD to automatically close the port when detaching. Signed-off-by: Thomas Monjalon --- app/test-pmd/testpmd.c | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index 5dbbf783f..f5dee1d71 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -1938,18 +1938,6 @@ port_is_started(portid_t port_id) return 1; } -static int -port_is_closed(portid_t port_id) -{ - if (port_id_is_invalid(port_id, ENABLED_WARN)) - return 0; - - if (ports[port_id].port_status != RTE_PORT_CLOSED) - return 0; - - return 1; -} - int start_port(portid_t pid) { @@ -2319,14 +2307,12 @@ detach_port(portid_t port_id) printf("Detaching a port...\n"); - if (!port_is_closed(port_id)) { - printf("Please close port first\n"); - return; + if (ports[port_id].port_status != RTE_PORT_CLOSED) { + printf("Port not closed\n"); + if (ports[port_id].flow_list) + port_flow_flush(port_id); } - if (ports[port_id].flow_list) - port_flow_flush(port_id); - if (rte_eth_dev_detach(port_id, name)) { TESTPMD_LOG(ERR, "Failed to detach port %u\n", port_id); return; -- 2.19.0