[dpdk-dev] [PATCH 1/2] app/test: fix make build when ring PMD is disabled

Bruce Richardson bruce.richardson at intel.com
Thu Oct 17 11:48:57 CEST 2019


On Thu, Oct 17, 2019 at 10:41:23AM +0100, Reshma Pattan wrote:
> 1)pdump, latency, bitrate and test_event_eth_tx_adapter
> unit tests are dependent on ring PMD, so compile those
> tests only when ring PMD is enabled else ignore.
> 
> 2)get rid of make file error which was added by bond unit test
> for ring PMD disabled case which is not necessary.
> 
> Fixes: 086eb64db3 ("test/pdump: add unit test for pdump library")
> Fixes: fdeb30fa71 ("test/bitrate: add unit tests for bitrate library")
> Fixes: 1e3676a06e ("test/latency: add unit tests for latencystats library")
> Fixes: 46cf97e4bb ("eventdev: add test for eth Tx adapter")
> Fixes: d23e09e0ef ("app/test: link with ring pmd when needed")
> 
> CC: stable at dpdk.org
> CC: Nikhil Rao <nikhil.rao at intel.com>
> CC: Chas Williams <chas3 at att.com>
> CC: Bruce Richardson <bruce.richardson at intel.com>
> CC: Stephen Hemminger <stephen at networkplumber.org>
> 
> Reported-by: Stephen Hemminger <stephen at networkplumber.org>
> Signed-off-by: Reshma Pattan <reshma.pattan at intel.com>
> ---
>  app/test/Makefile  | 16 ++++++----------
>  app/test/process.h |  8 ++++++++
>  app/test/test.c    |  2 ++
>  3 files changed, 16 insertions(+), 10 deletions(-)
> 



> diff --git a/app/test/Makefile b/app/test/Makefile
> index df7f77f44..30ecaf8fb 100644
> --- a/app/test/Makefile
> +++ b/app/test/Makefile
> @@ -144,8 +144,12 @@ SRCS-y += test_func_reentrancy.c
>  
>  SRCS-y += test_service_cores.c
>  
> +ifeq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
> +SRCS-y += sample_packet_forward.c
>  SRCS-$(CONFIG_RTE_LIBRTE_BITRATE) += test_bitratestats.c
>  SRCS-$(CONFIG_RTE_LIBRTE_LATENCY_STATS) += test_latencystats.c
> +SRCS-$(CONFIG_RTE_LIBRTE_PDUMP) += test_pdump.c
> +endif
>  
>  SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += test_cmdline.c
>  SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += test_cmdline_num.c
> @@ -174,11 +178,8 @@ SRCS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) += test_distributor_perf.c
>  
>  SRCS-$(CONFIG_RTE_LIBRTE_REORDER) += test_reorder.c
>  
> -SRCS-$(CONFIG_RTE_LIBRTE_PDUMP) += test_pdump.c
> -
>  SRCS-y += virtual_pmd.c
>  SRCS-y += packet_burst_generator.c
> -SRCS-y += sample_packet_forward.c
>  SRCS-$(CONFIG_RTE_LIBRTE_ACL) += test_acl.c
>  
>  ifeq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
> @@ -208,7 +209,9 @@ ifeq ($(CONFIG_RTE_LIBRTE_EVENTDEV),y)
>  SRCS-y += test_eventdev.c
>  SRCS-y += test_event_ring.c
>  SRCS-y += test_event_eth_rx_adapter.c
> +ifeq ($(CONFIG_RTE_LIBRTE_RING_PMD),y)
>  SRCS-y += test_event_eth_tx_adapter.c
> +endif

Minor nit, the ifeq can be removed by changing the SRCS-y to
SRCS-$(CONFIG...)

>  SRCS-y += test_event_timer_adapter.c
>  SRCS-y += test_event_crypto_adapter.c
>  endif
> @@ -260,13 +263,6 @@ endif
>  endif
>  endif
>  
> -# Link against shared libraries when needed
> -ifeq ($(CONFIG_RTE_LIBRTE_PMD_BOND),y)
> -ifneq ($(CONFIG_RTE_LIBRTE_PMD_RING),y)
> -$(error Link bonding tests require CONFIG_RTE_LIBRTE_PMD_RING=y)
> -endif
> -endif
> -
>  ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y)
>  
>  ifeq ($(CONFIG_RTE_LIBRTE_PMD_BOND),y)
> diff --git a/app/test/process.h b/app/test/process.h
> index 128ce4121..69c358e02 100644
> --- a/app/test/process.h
> +++ b/app/test/process.h
> @@ -24,10 +24,12 @@
>  #endif
>  
>  #ifdef RTE_LIBRTE_PDUMP
> +#ifdef RTE_LIBRTE_RING_PMD
>  #include <pthread.h>
>  extern void *send_pkts(void *empty);
>  extern uint16_t flag_for_send_pkts;
>  #endif
> +#endif
>  
>  /*
>   * launches a second copy of the test process using the given argv parameters,
> @@ -43,7 +45,9 @@ process_dup(const char *const argv[], int numargs, const char *env_value)
>  	int i, fd, status;
>  	char path[32];
>  #ifdef RTE_LIBRTE_PDUMP
> +#ifdef RTE_LIBRTE_RING_PMD
>  	pthread_t thread;
> +#endif
>  #endif
>  
>  	pid_t pid = fork();
> @@ -83,17 +87,21 @@ process_dup(const char *const argv[], int numargs, const char *env_value)
>  	}
>  	/* parent process does a wait */
>  #ifdef RTE_LIBRTE_PDUMP
> +#ifdef RTE_LIBRTE_RING_PMD
>  	if ((strcmp(env_value, "run_pdump_server_tests") == 0))
>  		pthread_create(&thread, NULL, &send_pkts, NULL);
> +#endif
>  #endif
>  
>  	while (wait(&status) != pid)
>  		;
>  #ifdef RTE_LIBRTE_PDUMP
> +#ifdef RTE_LIBRTE_RING_PMD
>  	if ((strcmp(env_value, "run_pdump_server_tests") == 0)) {
>  		flag_for_send_pkts = 0;
>  		pthread_join(thread, NULL);
>  	}
> +#endif
>  #endif
>  	return status;
>  }
> diff --git a/app/test/test.c b/app/test/test.c
> index cd7aaf645..d0826ca69 100644
> --- a/app/test/test.c
> +++ b/app/test/test.c
> @@ -53,7 +53,9 @@ do_recursive_call(void)
>  	} actions[] =  {
>  			{ "run_secondary_instances", test_mp_secondary },
>  #ifdef RTE_LIBRTE_PDUMP
> +#ifdef RTE_LIBRTE_RING_PMD
>  			{ "run_pdump_server_tests", test_pdump },
> +#endif
>  #endif
>  			{ "test_missing_c_flag", no_action },
>  			{ "test_master_lcore_flag", no_action },
> -- 
> 2.21.0
> 


More information about the dev mailing list