[dpdk-dev] [PATCH 2/3] examples/l3fwd: print port bdf when adding routes

Pavan Nikhilesh Bhagavatula pbhagavatula at marvell.com
Fri Nov 5 08:27:17 CET 2021


>> From: dev <dev-bounces at dpdk.org> On Behalf Of
>> pbhagavatula at marvell.com
>> Sent: Sunday 3 October 2021 21:11
>> To: jerinj at marvell.com
>> Cc: dev at dpdk.org; Pavan Nikhilesh <pbhagavatula at marvell.com>
>> Subject: [dpdk-dev] [PATCH 2/3] examples/l3fwd: print port bdf
>when
>> adding routes
>>
>> From: Pavan Nikhilesh <pbhagavatula at marvell.com>
>>
>> Since the number of Ethernet ports have gone up, print the pci bdf
>along
>> with the routes.
>> This is also helpful for cases where allow listing order is not honored.
>>
>> Signed-off-by: Pavan Nikhilesh <pbhagavatula at marvell.com>
>> ---
>>  examples/l3fwd/l3fwd_fib.c | 16 ++++++++++------
>>  examples/l3fwd/l3fwd_lpm.c |  9 ++++++---
>>  2 files changed, 16 insertions(+), 9 deletions(-)
>>
>> diff --git a/examples/l3fwd/l3fwd_fib.c
>b/examples/l3fwd/l3fwd_fib.c
>> index f8d6a3ac39..cc6054ca44 100644
>> --- a/examples/l3fwd/l3fwd_fib.c
>> +++ b/examples/l3fwd/l3fwd_fib.c
>> @@ -439,6 +439,7 @@ setup_fib(const int socketid)
>>
>>  	/* Populate the fib ipv4 table. */
>>  	for (i = 0; i < RTE_DIM(ipv4_l3fwd_route_array); i++) {
>> +		struct rte_eth_dev_info dev_info;
>>  		struct in_addr in;
>>
>>  		/* Skip unused ports. */
>> @@ -446,6 +447,8 @@ setup_fib(const int socketid)
>>  				enabled_port_mask) == 0)
>>  			continue;
>>
>> +
>	rte_eth_dev_info_get(ipv4_l3fwd_route_array[i].if_out,
>> +				     &dev_info);
>>  		ret =
>rte_fib_add(ipv4_l3fwd_fib_lookup_struct[socketid],
>>  			ipv4_l3fwd_route_array[i].ip,
>>  			ipv4_l3fwd_route_array[i].depth,
>> @@ -459,13 +462,14 @@ setup_fib(const int socketid)
>>
>>  		in.s_addr = htonl(ipv4_l3fwd_route_array[i].ip);
>>  		if (inet_ntop(AF_INET, &in, abuf, sizeof(abuf)) != NULL)
>{
>> -			printf("FIB: Adding route %s / %d (%d)\n",
>> -				abuf,
>> -				ipv4_l3fwd_route_array[i].depth,
>> -				ipv4_l3fwd_route_array[i].if_out);
>> +			printf("FIB: Adding route %s / %d (%d) [%s]\n",
>abuf,
>> +			       ipv4_l3fwd_route_array[i].depth,
>> +			       ipv4_l3fwd_route_array[i].if_out,
>> +			       dev_info.device->name);
>>  		} else {
>> -			printf("FIB: IPv4 route added to port %d\n",
>> -				ipv4_l3fwd_route_array[i].if_out);
>> +			printf("FIB: IPv4 route added to port %d
>[%s]\n",
>> +			       ipv4_l3fwd_route_array[i].if_out,
>> +			       dev_info.device->name);
>>  		}
>>  	}
>>  	/* >8 End of setup fib. */
>> diff --git a/examples/l3fwd/l3fwd_lpm.c
>b/examples/l3fwd/l3fwd_lpm.c
>> index 7200160164..582911c622 100644
>> --- a/examples/l3fwd/l3fwd_lpm.c
>> +++ b/examples/l3fwd/l3fwd_lpm.c
>> @@ -451,6 +451,7 @@ setup_lpm(const int socketid)
>>
>>  	/* populate the LPM table */
>>  	for (i = 0; i < RTE_DIM(ipv4_l3fwd_route_array); i++) {
>> +		struct rte_eth_dev_info dev_info;
>>  		struct in_addr in;
>>
>>  		/* skip unused ports */
>> @@ -458,6 +459,8 @@ setup_lpm(const int socketid)
>>  				enabled_port_mask) == 0)
>>  			continue;
>>
>> +
>	rte_eth_dev_info_get(ipv4_l3fwd_route_array[i].if_out,
>> +				     &dev_info);
>>  		ret =
>rte_lpm_add(ipv4_l3fwd_lpm_lookup_struct[socketid],
>>  			ipv4_l3fwd_route_array[i].ip,
>>  			ipv4_l3fwd_route_array[i].depth,
>> @@ -470,10 +473,10 @@ setup_lpm(const int socketid)
>>  		}
>>
>>  		in.s_addr = htonl(ipv4_l3fwd_route_array[i].ip);
>> -		printf("LPM: Adding route %s / %d (%d)\n",
>> +		printf("LPM: Adding route %s / %d (%d) [%s]\n",
>>  		       inet_ntop(AF_INET, &in, abuf, sizeof(abuf)),
>> -			ipv4_l3fwd_route_array[i].depth,
>> -			ipv4_l3fwd_route_array[i].if_out);
>> +		       ipv4_l3fwd_route_array[i].depth,
>> +		       ipv4_l3fwd_route_array[i].if_out, dev_info.device-
>> >name);
>>  	}
>>
>>  	/* create the LPM6 table */
>
>Hi Pavan,
>
>If this is to be added it should probably print the BDF for the IPv6 routes
>as well as the IPv4 routes for consistency.
>Otherwise I think this is a good addition.

Sure, I will add it in the next version.

>
>Thanks,
>Conor.

Thanks,
Pavan.


More information about the dev mailing list