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 9D157A04BA for ; Sat, 3 Oct 2020 11:12:27 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5A3BA1D453; Sat, 3 Oct 2020 11:12:24 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 90A521D428; Sat, 3 Oct 2020 11:12:21 +0200 (CEST) IronPort-SDR: Kk3k5ahU6pH4wJ3f+ijLWCkUmonoh+0gAdEKQoPOuM8aZuzcjHVxX48KZwd4SMmn6u1ekzoo70 8ug29RaG1fYg== X-IronPort-AV: E=McAfee;i="6000,8403,9762"; a="142570744" X-IronPort-AV: E=Sophos;i="5.77,331,1596524400"; d="scan'208";a="142570744" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Oct 2020 02:12:17 -0700 IronPort-SDR: 50Ddlm5vtiHFiOCuJm2FR+OT+jVqyLWY4pHclQ9nF1RzqElygmxrGQBoYh7cRmSZ2tKijKCaBL SOPVwQd0e6/g== X-IronPort-AV: E=Sophos;i="5.77,331,1596524400"; d="scan'208";a="351839767" Received: from unknown (HELO localhost.localdomain) ([10.190.210.212]) by fmsmga003-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Oct 2020 02:12:15 -0700 From: "Jayatheerthan, Jay" To: jerinj@marvell.com, thomas@monjalon.net, nikhil.rao@intel.com Cc: dev@dpdk.org, stable@dpdk.org, jay.jayatheerthan@intel.com Date: Sat, 3 Oct 2020 14:35:41 +0530 Message-Id: <20201003090541.32449-2-jay.jayatheerthan@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201003090541.32449-1-jay.jayatheerthan@intel.com> References: <20201003090541.32449-1-jay.jayatheerthan@intel.com> Subject: [dpdk-stable] [PATCH 2/2] app/test: add net null dev creation in Rx adapter autotest X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" From: "Jay Jayatheerthan" Allows creation of net_null if vdev EAL option is not specified and uninit vdev created in the test. The change also adds error checks for vdev init and uninit. Signed-off-by: Jay Jayatheerthan --- app/test/test_event_eth_rx_adapter.c | 61 +++++++++++++++++++++++++++- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/app/test/test_event_eth_rx_adapter.c b/app/test/test_event_eth_rx_adapter.c index 71c946164..dbf85be35 100644 --- a/app/test/test_event_eth_rx_adapter.c +++ b/app/test/test_event_eth_rx_adapter.c @@ -30,6 +30,8 @@ struct event_eth_rx_adapter_test_params { }; static struct event_eth_rx_adapter_test_params default_params; +static bool event_dev_created; +static bool eth_dev_created; static inline int port_init_common(uint16_t port, const struct rte_eth_conf *port_conf, @@ -202,7 +204,10 @@ testsuite_setup(void) if (!count) { printf("Failed to find a valid event device," " testing with event_skeleton device\n"); - rte_vdev_init("event_skeleton", NULL); + err = rte_vdev_init("event_skeleton", NULL); + TEST_ASSERT(err == 0, "Failed to create event_skeleton. err=%d", + err); + event_dev_created = true; } struct rte_event_dev_config config = { @@ -222,6 +227,15 @@ testsuite_setup(void) TEST_ASSERT(err == 0, "Event device initialization failed err %d\n", err); + count = rte_eth_dev_count_total(); + if (!count) { + printf("Testing with net_null device\n"); + err = rte_vdev_init("net_null", NULL); + TEST_ASSERT(err == 0, "Failed to create net_null. err=%d", + err); + eth_dev_created = true; + } + /* * eth devices like octeontx use event device to receive packets * so rte_eth_dev_start invokes rte_event_dev_start internally, so @@ -249,7 +263,10 @@ testsuite_setup_rx_intr(void) if (!count) { printf("Failed to find a valid event device," " testing with event_skeleton device\n"); - rte_vdev_init("event_skeleton", NULL); + err = rte_vdev_init("event_skeleton", NULL); + TEST_ASSERT(err == 0, "Failed to create event_skeleton. err=%d", + err); + event_dev_created = true; } struct rte_event_dev_config config = { @@ -270,6 +287,15 @@ testsuite_setup_rx_intr(void) TEST_ASSERT(err == 0, "Event device initialization failed err %d\n", err); + count = rte_eth_dev_count_total(); + if (!count) { + printf("Testing with net_null device\n"); + err = rte_vdev_init("net_null", NULL); + TEST_ASSERT(err == 0, "Failed to create net_null. err=%d", + err); + eth_dev_created = true; + } + /* * eth devices like octeontx use event device to receive packets * so rte_eth_dev_start invokes rte_event_dev_start internally, so @@ -292,21 +318,52 @@ testsuite_setup_rx_intr(void) static void testsuite_teardown(void) { + int err; uint32_t i; RTE_ETH_FOREACH_DEV(i) rte_eth_dev_stop(i); + if (eth_dev_created) { + err = rte_vdev_uninit("net_null"); + if (err) + printf("Failed to delete net_null. err=%d", err); + eth_dev_created = false; + } + rte_mempool_free(default_params.mp); + if (event_dev_created) { + err = rte_vdev_uninit("event_skeleton"); + if (err) + printf("Failed to delete event_skeleton. err=%d", err); + event_dev_created = false; + } + + memset(&default_params, 0, sizeof(default_params)); } static void testsuite_teardown_rx_intr(void) { + int err; if (!default_params.rx_intr_port_inited) return; rte_eth_dev_stop(default_params.rx_intr_port); + if (eth_dev_created) { + err = rte_vdev_uninit("net_null"); + if (err) + printf("Failed to delete net_null. err=%d", err); + eth_dev_created = false; + } rte_mempool_free(default_params.mp); + if (event_dev_created) { + err = rte_vdev_uninit("event_skeleton"); + if (err) + printf("Failed to delete event_skeleton. err=%d", err); + event_dev_created = false; + } + + memset(&default_params, 0, sizeof(default_params)); } static int -- 2.17.1