[dpdk-dev] [PATCH v11 07/24] examples: new link status print format

Ferruh Yigit ferruh.yigit at intel.com
Mon Sep 21 14:47:57 CEST 2020


On 9/15/2020 8:07 PM, Ivan Dyukov wrote:
> Add usage of rte_eth_link_to_str function to example
> applications:
> 	* ipv4_multicast
> 	* l2fwd-jobstats
> 	* l2fwd-keepalive
> 	* l3fwd
> 	* link_status_interrupt
> 
> Signed-off-by: Ivan Dyukov <i.dyukov at samsung.com>

<...>

> diff --git a/examples/l3fwd/main.c b/examples/l3fwd/main.c
> index 24ede4290..0aeae216a 100644
> --- a/examples/l3fwd/main.c
> +++ b/examples/l3fwd/main.c
> @@ -810,6 +810,7 @@ check_all_ports_link_status(uint32_t port_mask)
>   	uint8_t count, all_ports_up, print_flag = 0;
>   	struct rte_eth_link link;
>   	int ret;
> +	char link_status_text[RTE_ETH_LINK_MAX_STR_LEN];
>   
>   	printf("\nChecking link status");
>   	fflush(stdout);
> @@ -833,14 +834,10 @@ check_all_ports_link_status(uint32_t port_mask)
>   			}
>   			/* print link status if flag set */
>   			if (print_flag == 1) {
> -				if (link.link_status)
> -					printf(
> -					"Port%d Link Up. Speed %u Mbps -%s\n",
> -						portid, link.link_speed,
> -				(link.link_duplex == ETH_LINK_FULL_DUPLEX) ?
> -					("full-duplex") : ("half-duplex"));
> -				else
> -					printf("Port %d Link Down\n", portid);
> +				rte_eth_link_to_str(link_status_text,
> +					sizeof(link_status_text), &link);
> +				printf("Port %d %s\n", portid,
> +				       link_status_text);
>   				continue;

l3fwd/Makefile is missing "CFLAGS += -DALLOW_EXPERIMENTAL_API", although 
the meson file has it.

Using this new experimental API is causing build error, will updating as 
following as part of this patch:

  +# Added for 'rte_eth_link_to_str()'
  +CFLAGS += -DALLOW_EXPERIMENTAL_API



More information about the dev mailing list