[dpdk-dev] app/testpmd: add bus info when display port info

Message ID 1493181099-14232-1-git-send-email-yulong.pei@intel.com (mailing list archive)
State Rejected, archived
Delegated to: Thomas Monjalon
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Pei, Yulong April 26, 2017, 4:31 a.m. UTC
  Display pci device bus info when show port info.

Signed-off-by: Yulong Pei <yulong.pei@intel.com>
---
 app/test-pmd/config.c | 8 ++++++++
 1 file changed, 8 insertions(+)
  

Comments

Jingjing Wu April 28, 2017, 7:46 a.m. UTC | #1
> -----Original Message-----
> From: Pei, Yulong
> Sent: Wednesday, April 26, 2017 12:32 PM
> To: dev@dpdk.org
> Cc: Wu, Jingjing <jingjing.wu@intel.com>; thomas@monjalon.net
> Subject: [PATCH] app/testpmd: add bus info when display port info
> 
> Display pci device bus info when show port info.
> 
> Signed-off-by: Yulong Pei <yulong.pei@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
  
Thomas Monjalon May 1, 2017, 1:56 p.m. UTC | #2
26/04/2017 06:31, Yulong Pei:
> Display pci device bus info when show port info.
> 
> Signed-off-by: Yulong Pei <yulong.pei@intel.com>
> ---
> --- a/app/test-pmd/config.c
> +++ b/app/test-pmd/config.c
> @@ -469,6 +469,14 @@ port_infos_display(portid_t port_id)
>  	print_ethaddr("MAC address: ", &mac_addr);
>  	printf("\nDriver name: %s", dev_info.driver_name);
>  	printf("\nConnect to socket: %u", port->socket_id);
> +	if (dev_info.pci_dev)
> +		printf("\nBus-info: %04x:%02x:%02x:%x",
> +			dev_info.pci_dev->addr.domain,
> +			dev_info.pci_dev->addr.bus,
> +			dev_info.pci_dev->addr.devid,
> +			dev_info.pci_dev->addr.function);
> +	else
> +		printf("\nBus-info: N/A");

The bus information must be managed in a more generic way.
The field pci_dev will probably be removed in a next release.
  
Pei, Yulong May 2, 2017, 1:58 a.m. UTC | #3
Hi Thomas,


-----Original Message-----
From: Thomas Monjalon [mailto:thomas@monjalon.net] 
Sent: Monday, May 1, 2017 9:56 PM
To: Pei, Yulong <yulong.pei@intel.com>
Cc: dev@dpdk.org; Wu, Jingjing <jingjing.wu@intel.com>
Subject: Re: [dpdk-dev] [PATCH] app/testpmd: add bus info when display port info

26/04/2017 06:31, Yulong Pei:
> Display pci device bus info when show port info.
> 
> Signed-off-by: Yulong Pei <yulong.pei@intel.com>
> ---
> --- a/app/test-pmd/config.c
> +++ b/app/test-pmd/config.c
> @@ -469,6 +469,14 @@ port_infos_display(portid_t port_id)
>  	print_ethaddr("MAC address: ", &mac_addr);
>  	printf("\nDriver name: %s", dev_info.driver_name);
>  	printf("\nConnect to socket: %u", port->socket_id);
> +	if (dev_info.pci_dev)
> +		printf("\nBus-info: %04x:%02x:%02x:%x",
> +			dev_info.pci_dev->addr.domain,
> +			dev_info.pci_dev->addr.bus,
> +			dev_info.pci_dev->addr.devid,
> +			dev_info.pci_dev->addr.function);
> +	else
> +		printf("\nBus-info: N/A");

The bus information must be managed in a more generic way.
The field pci_dev will probably be removed in a next release.

Could you kind to tell me more information about what does "more generic way" mean ?

Best Regards
Yulong Pei
  
Thomas Monjalon May 2, 2017, 9:30 a.m. UTC | #4
02/05/2017 03:58, Pei, Yulong:
> From: Thomas Monjalon [mailto:thomas@monjalon.net] 
> > 26/04/2017 06:31, Yulong Pei:
> > > Display pci device bus info when show port info.
> > > 
> > > Signed-off-by: Yulong Pei <yulong.pei@intel.com>
> > > ---
> > > --- a/app/test-pmd/config.c
> > > +++ b/app/test-pmd/config.c
> > > @@ -469,6 +469,14 @@ port_infos_display(portid_t port_id)
> > > 
> > >  	print_ethaddr("MAC address: ", &mac_addr);
> > >  	printf("\nDriver name: %s", dev_info.driver_name);
> > >  	printf("\nConnect to socket: %u", port->socket_id);
> > > 
> > > +	if (dev_info.pci_dev)
> > > +		printf("\nBus-info: %04x:%02x:%02x:%x",
> > > +			dev_info.pci_dev->addr.domain,
> > > +			dev_info.pci_dev->addr.bus,
> > > +			dev_info.pci_dev->addr.devid,
> > > +			dev_info.pci_dev->addr.function);
> > > +	else
> > > +		printf("\nBus-info: N/A");
> > 
> > The bus information must be managed in a more generic way.
> > The field pci_dev will probably be removed in a next release.
> 
> Could you kind to tell me more information about what does "more generic way" mean ?

It means we should not have a PCI field in ethdev.
We should have a function to print a bus info in each bus implementation,
and a generic function taking a rte_device object would call the right
bus-specific function via a function pointer.
  

Patch

diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c
index ef07925..49bf816 100644
--- a/app/test-pmd/config.c
+++ b/app/test-pmd/config.c
@@ -469,6 +469,14 @@  port_infos_display(portid_t port_id)
 	print_ethaddr("MAC address: ", &mac_addr);
 	printf("\nDriver name: %s", dev_info.driver_name);
 	printf("\nConnect to socket: %u", port->socket_id);
+	if (dev_info.pci_dev)
+		printf("\nBus-info: %04x:%02x:%02x:%x",
+			dev_info.pci_dev->addr.domain,
+			dev_info.pci_dev->addr.bus,
+			dev_info.pci_dev->addr.devid,
+			dev_info.pci_dev->addr.function);
+	else
+		printf("\nBus-info: N/A");
 
 	if (port_numa[port_id] != NUMA_NO_CONFIG) {
 		mp = mbuf_pool_find(port_numa[port_id]);