From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by dpdk.org (Postfix) with ESMTP id E0C43237 for ; Fri, 29 Dec 2017 14:37:29 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 93ECC21193; Fri, 29 Dec 2017 08:37:29 -0500 (EST) Received: from frontend1 ([10.202.2.160]) by compute1.internal (MEProxy); Fri, 29 Dec 2017 08:37:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=mesmtp; bh=k4uSeMMzsvYpZy On/afdGW5UHBvU3f0kLixb0DxcEug=; b=WPQxj+ruGtpd0gz97hG/RtGBxhjM0M IgOVGSSvGu3BSgCdaRSNhyXpo8qj41nmWzfbyRYmR1owYxfZP9MHVUhVkAPUp0Qd purzFeLMGO+RsbMvlONcjXhfwcK84/aflx2WxTgWo6e+I2VPSJoMJv3DMl8NRbkq ipi//yATBEGsU= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=k4uSeMMzsvYpZyOn/afdGW5UHBvU3f0kLixb0DxcEug=; b=S0j08SAB O40/3WfPDb6sKStFrw35qKxcdc2AZ2CaDUUp67qcsUo39WlKw/fgHOlkP9McNobe nBLbo+Qbjl/XOCODigp0Gk3qLdP88kAIVIK2ASoVntO7qeoeJGU5o6PKbljw84Ch xM5hcb4CTOyizN3zlbhvryx90hmwmhWOAYHztOdtjpjxodOw+ktLkqylz7Z63ceL LCbdxYjRPHGOT+D99GE777HisBSLYe2LwJPVeHp/7mhhseynKne+IHjG5PWWVXdA F3NCusQHKke82AmVtt1ww+lZFUn3+dhGTbMlTkYlxVLi4G18CM1Sde3M7VhwFii3 l5U4sjtzgJApGw== X-ME-Sender: Received: from xps.monjalon.net (240.16.136.77.rev.sfr.net [77.136.16.240]) by mail.messagingengine.com (Postfix) with ESMTPA id 6C22A7E458; Fri, 29 Dec 2017 08:37:28 -0500 (EST) From: Thomas Monjalon To: dev@dpdk.org Cc: ferruh.yigit@intel.com, Matan Azrad Date: Fri, 29 Dec 2017 14:36:58 +0100 Message-Id: <20171229133658.31258-6-thomas@monjalon.net> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171229133658.31258-1-thomas@monjalon.net> References: <20171128221302.15400-1-thomas@monjalon.net> <20171229133658.31258-1-thomas@monjalon.net> Subject: [dpdk-dev] [PATCH v3 5/5] app/testpmd: extend event printing 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: Fri, 29 Dec 2017 13:37:30 -0000 From: Matan Azrad There are new Ethernet device events - NEW and DESTROY, and new option to register all ports by one call. Adjust application to aforementioned changes. Signed-off-by: Matan Azrad --- v3: no change --- app/test-pmd/parameters.c | 4 ++++ app/test-pmd/testpmd.c | 30 ++++++++++++++++-------------- doc/guides/testpmd_app_ug/run_app.rst | 4 ++-- 3 files changed, 22 insertions(+), 16 deletions(-) diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c index 84e7a63ef..796d1a5b6 100644 --- a/app/test-pmd/parameters.c +++ b/app/test-pmd/parameters.c @@ -546,6 +546,10 @@ parse_event_printing_config(const char *optarg, int enable) mask = UINT32_C(1) << RTE_ETH_EVENT_MACSEC; else if (!strcmp(optarg, "intr_rmv")) mask = UINT32_C(1) << RTE_ETH_EVENT_INTR_RMV; + else if (!strcmp(optarg, "dev_probed")) + mask = UINT32_C(1) << RTE_ETH_EVENT_NEW; + else if (!strcmp(optarg, "dev_released")) + mask = UINT32_C(1) << RTE_ETH_EVENT_DESTROY; else if (!strcmp(optarg, "all")) mask = ~UINT32_C(0); else { diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index c3ab44849..26576eb76 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -1568,20 +1568,6 @@ start_port(portid_t pid) } } - for (event_type = RTE_ETH_EVENT_UNKNOWN; - event_type < RTE_ETH_EVENT_MAX; - event_type++) { - diag = rte_eth_dev_callback_register(pi, - event_type, - eth_event_callback, - NULL); - if (diag) { - printf("Failed to setup even callback for event %d\n", - event_type); - return -1; - } - } - /* start port */ if (rte_eth_dev_start(pi) < 0) { printf("Fail to start port %d\n", pi); @@ -1608,6 +1594,20 @@ start_port(portid_t pid) need_check_link_status = 1; } + for (event_type = RTE_ETH_EVENT_UNKNOWN; + event_type < RTE_ETH_EVENT_MAX; + event_type++) { + diag = rte_eth_dev_callback_register(RTE_ETH_ALL, + event_type, + eth_event_callback, + NULL); + if (diag) { + printf("Failed to setup even callback for event %d\n", + event_type); + return -1; + } + } + if (need_check_link_status == 1 && !no_link_check) check_all_ports_link_status(RTE_PORT_ALL); else if (need_check_link_status == 0) @@ -1930,6 +1930,8 @@ eth_event_callback(portid_t port_id, enum rte_eth_event_type type, void *param, [RTE_ETH_EVENT_VF_MBOX] = "VF Mbox", [RTE_ETH_EVENT_MACSEC] = "MACsec", [RTE_ETH_EVENT_INTR_RMV] = "device removal", + [RTE_ETH_EVENT_NEW] = "device probed", + [RTE_ETH_EVENT_DESTROY] = "device released", [RTE_ETH_EVENT_MAX] = NULL, }; diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst index 4c0d2cede..377b07651 100644 --- a/doc/guides/testpmd_app_ug/run_app.rst +++ b/doc/guides/testpmd_app_ug/run_app.rst @@ -492,12 +492,12 @@ The commandline options are: Set the logical core N to perform bitrate calculation. -* ``--print-event `` +* ``--print-event `` Enable printing the occurrence of the designated event. Using all will enable all of them. -* ``--mask-event `` +* ``--mask-event `` Disable printing the occurrence of the designated event. Using all will disable all of them. -- 2.15.1