All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
@ 2020-11-03 13:26 Gal Pressman
  2020-11-03 13:31 ` Parav Pandit
  2020-11-03 13:45 ` Jason Gunthorpe
  0 siblings, 2 replies; 25+ messages in thread
From: Gal Pressman @ 2020-11-03 13:26 UTC (permalink / raw)
  To: Jason Gunthorpe, Doug Ledford; +Cc: linux-rdma, Leon Romanovsky, Gal Pressman

Add the ability to query the device's bdf through rdma tool netlink
command (in addition to the sysfs infra).

In case of virtual devices (rxe/siw), the netdev bdf will be shown.

Signed-off-by: Gal Pressman <galpress@amazon.com>
---
 drivers/infiniband/core/nldev.c  | 10 +++++++++-
 include/uapi/rdma/rdma_netlink.h |  5 +++++
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/core/nldev.c b/drivers/infiniband/core/nldev.c
index 12d29d54a081..9704b1449c01 100644
--- a/drivers/infiniband/core/nldev.c
+++ b/drivers/infiniband/core/nldev.c
@@ -291,7 +291,15 @@ static int fill_dev_info(struct sk_buff *msg, struct ib_device *device)
 	else if (rdma_protocol_usnic(device, port))
 		ret = nla_put_string(msg, RDMA_NLDEV_ATTR_DEV_PROTOCOL,
 				     "usnic");
-	return ret;
+	if (ret)
+		return ret;
+
+	if (device->dev.parent)
+		if (nla_put_string(msg, RDMA_NLDEV_PARENT_BDF,
+				   dev_name(device->dev.parent)))
+			return -EMSGSIZE;
+
+	return 0;
 }
 
 static int fill_port_info(struct sk_buff *msg,
diff --git a/include/uapi/rdma/rdma_netlink.h b/include/uapi/rdma/rdma_netlink.h
index d2f5b8396243..7495104668eb 100644
--- a/include/uapi/rdma/rdma_netlink.h
+++ b/include/uapi/rdma/rdma_netlink.h
@@ -533,6 +533,11 @@ enum rdma_nldev_attr {
 
 	RDMA_NLDEV_ATTR_RES_RAW,	/* binary */
 
+	/*
+	 * Parent device BDF (bus, device, function).
+	 */
+	RDMA_NLDEV_PARENT_BDF,			/* string */
+
 	/*
 	 * Always the end
 	 */
-- 
2.29.1


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* RE: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 13:26 [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump Gal Pressman
@ 2020-11-03 13:31 ` Parav Pandit
  2020-11-03 13:45 ` Jason Gunthorpe
  1 sibling, 0 replies; 25+ messages in thread
From: Parav Pandit @ 2020-11-03 13:31 UTC (permalink / raw)
  To: Gal Pressman, Jason Gunthorpe, Doug Ledford; +Cc: linux-rdma, Leon Romanovsky



> From: Gal Pressman <galpress@amazon.com>
> Sent: Tuesday, November 3, 2020 6:56 PM
> 
> Add the ability to query the device's bdf through rdma tool netlink command
> (in addition to the sysfs infra).
> 
New netlink attribute addition needs to show an example in the commit message for
$ rdma dev show
or 
$rdma link show 
Whichever applicable.

> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> 
> Signed-off-by: Gal Pressman <galpress@amazon.com>
> ---
>  drivers/infiniband/core/nldev.c  | 10 +++++++++-
> include/uapi/rdma/rdma_netlink.h |  5 +++++
>  2 files changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/infiniband/core/nldev.c b/drivers/infiniband/core/nldev.c
> index 12d29d54a081..9704b1449c01 100644
> --- a/drivers/infiniband/core/nldev.c
> +++ b/drivers/infiniband/core/nldev.c
> @@ -291,7 +291,15 @@ static int fill_dev_info(struct sk_buff *msg, struct
> ib_device *device)
>  	else if (rdma_protocol_usnic(device, port))
>  		ret = nla_put_string(msg,
> RDMA_NLDEV_ATTR_DEV_PROTOCOL,
>  				     "usnic");
> -	return ret;
> +	if (ret)
> +		return ret;
> +
> +	if (device->dev.parent)
> +		if (nla_put_string(msg, RDMA_NLDEV_PARENT_BDF,
Not everything is PCI, BDF is too pci specific.

So name attribute name should be RDMA_NLDEV_PARENT_DEV and additional one as PARENT_BUS

> +				   dev_name(device->dev.parent)))
> +			return -EMSGSIZE;
> +
> +	return 0;
>  }
> 
>  static int fill_port_info(struct sk_buff *msg, diff --git
> a/include/uapi/rdma/rdma_netlink.h b/include/uapi/rdma/rdma_netlink.h
> index d2f5b8396243..7495104668eb 100644
> --- a/include/uapi/rdma/rdma_netlink.h
> +++ b/include/uapi/rdma/rdma_netlink.h
> @@ -533,6 +533,11 @@ enum rdma_nldev_attr {
> 
>  	RDMA_NLDEV_ATTR_RES_RAW,	/* binary */
> 
> +	/*
> +	 * Parent device BDF (bus, device, function).
> +	 */
> +	RDMA_NLDEV_PARENT_BDF,			/* string */
> +
>  	/*
>  	 * Always the end
>  	 */
> --
> 2.29.1


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 13:26 [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump Gal Pressman
  2020-11-03 13:31 ` Parav Pandit
@ 2020-11-03 13:45 ` Jason Gunthorpe
  2020-11-03 13:57   ` Leon Romanovsky
  1 sibling, 1 reply; 25+ messages in thread
From: Jason Gunthorpe @ 2020-11-03 13:45 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Doug Ledford, linux-rdma, Leon Romanovsky

On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> Add the ability to query the device's bdf through rdma tool netlink
> command (in addition to the sysfs infra).
> 
> In case of virtual devices (rxe/siw), the netdev bdf will be shown.

Why? What is the use case?

Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 13:45 ` Jason Gunthorpe
@ 2020-11-03 13:57   ` Leon Romanovsky
  2020-11-03 14:11     ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-03 13:57 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Gal Pressman, Doug Ledford, linux-rdma

On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> > Add the ability to query the device's bdf through rdma tool netlink
> > command (in addition to the sysfs infra).
> >
> > In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>
> Why? What is the use case?

Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?

Thanks

>
> Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 13:57   ` Leon Romanovsky
@ 2020-11-03 14:11     ` Gal Pressman
  2020-11-03 14:22       ` Jason Gunthorpe
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-03 14:11 UTC (permalink / raw)
  To: Leon Romanovsky, Jason Gunthorpe; +Cc: Doug Ledford, linux-rdma

On 03/11/2020 15:57, Leon Romanovsky wrote:
> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>> Add the ability to query the device's bdf through rdma tool netlink
>>> command (in addition to the sysfs infra).
>>>
>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>
>> Why? What is the use case?
> 
> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?

When taking system topology into consideration you need some way to pair the
ibdev and bdf, especially when working with multiple devices.
The netdev name doesn't exist on devices with no netdevs (IB, EFA).

Why rdma tool? Because it's more intuitive than sysfs.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 14:11     ` Gal Pressman
@ 2020-11-03 14:22       ` Jason Gunthorpe
  2020-11-03 15:45         ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Jason Gunthorpe @ 2020-11-03 14:22 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> On 03/11/2020 15:57, Leon Romanovsky wrote:
> > On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>> Add the ability to query the device's bdf through rdma tool netlink
> >>> command (in addition to the sysfs infra).
> >>>
> >>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>
> >> Why? What is the use case?
> > 
> > Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> 
> When taking system topology into consideration you need some way to pair the
> ibdev and bdf, especially when working with multiple devices.
> The netdev name doesn't exist on devices with no netdevs (IB, EFA).

You are supposed to use sysfs

/sys/class/infiniband/ibp0s9/device
 
Should always be the physical device

> Why rdma tool? Because it's more intuitive than sysfs.

But we generally don't put this information into netlink BDF is just
the start, you need all the other topology information to make sense
of it, and all that is in sysfs only already

Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 14:22       ` Jason Gunthorpe
@ 2020-11-03 15:45         ` Gal Pressman
  2020-11-05 20:00           ` Jason Gunthorpe
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-03 15:45 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On 03/11/2020 16:22, Jason Gunthorpe wrote:
> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>> command (in addition to the sysfs infra).
>>>>>
>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>
>>>> Why? What is the use case?
>>>
>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>
>> When taking system topology into consideration you need some way to pair the
>> ibdev and bdf, especially when working with multiple devices.
>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> 
> You are supposed to use sysfs
> 
> /sys/class/infiniband/ibp0s9/device
> 
> Should always be the physical device
> 
>> Why rdma tool? Because it's more intuitive than sysfs.
> 
> But we generally don't put this information into netlink BDF is just
> the start, you need all the other topology information to make sense
> of it, and all that is in sysfs only already

As the commit message says, it's in addition to the device sysfs.

Many (if not most) of the existing rdma netlink commands are duplicates of some
sysfs entries, but show it in a more "modern" way.
I'm not convinced that bdf should be treated differently.

Similarly to how you can see netdevs bdf through 'ethtool -i' in addition to
sysfs, I think it's useful.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-03 15:45         ` Gal Pressman
@ 2020-11-05 20:00           ` Jason Gunthorpe
  2020-11-08 13:03             ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Jason Gunthorpe @ 2020-11-05 20:00 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> > On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>> Add the ability to query the device's bdf through rdma tool netlink
> >>>>> command (in addition to the sysfs infra).
> >>>>>
> >>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>
> >>>> Why? What is the use case?
> >>>
> >>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>
> >> When taking system topology into consideration you need some way to pair the
> >> ibdev and bdf, especially when working with multiple devices.
> >> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> > 
> > You are supposed to use sysfs
> > 
> > /sys/class/infiniband/ibp0s9/device
> > 
> > Should always be the physical device
> > 
> >> Why rdma tool? Because it's more intuitive than sysfs.
> > 
> > But we generally don't put this information into netlink BDF is just
> > the start, you need all the other topology information to make sense
> > of it, and all that is in sysfs only already
> 
> As the commit message says, it's in addition to the device sysfs.
> 
> Many (if not most) of the existing rdma netlink commands are duplicates of some
> sysfs entries, but show it in a more "modern" way.
> I'm not convinced that bdf should be treated differently.

Why did you call it BDF anyhow? it has nothing to do with PCI BDF
other than it happens to be the PDF for PCI devices. Netdev called
this bus_info

> Similarly to how you can see netdevs bdf through 'ethtool -i' in addition to
> sysfs, I think it's useful.

bus_info is incredibly old, it predates even the driver core to an
time when there really was no other way to get the information.

Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-05 20:00           ` Jason Gunthorpe
@ 2020-11-08 13:03             ` Gal Pressman
  2020-11-08 14:36               ` Parav Pandit
  2020-11-08 23:49               ` Jason Gunthorpe
  0 siblings, 2 replies; 25+ messages in thread
From: Gal Pressman @ 2020-11-08 13:03 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On 05/11/2020 22:00, Jason Gunthorpe wrote:
> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>>>> command (in addition to the sysfs infra).
>>>>>>>
>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>>>
>>>>>> Why? What is the use case?
>>>>>
>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>>>
>>>> When taking system topology into consideration you need some way to pair the
>>>> ibdev and bdf, especially when working with multiple devices.
>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
>>>
>>> You are supposed to use sysfs
>>>
>>> /sys/class/infiniband/ibp0s9/device
>>>
>>> Should always be the physical device
>>>
>>>> Why rdma tool? Because it's more intuitive than sysfs.
>>>
>>> But we generally don't put this information into netlink BDF is just
>>> the start, you need all the other topology information to make sense
>>> of it, and all that is in sysfs only already
>>
>> As the commit message says, it's in addition to the device sysfs.
>>
>> Many (if not most) of the existing rdma netlink commands are duplicates of some
>> sysfs entries, but show it in a more "modern" way.
>> I'm not convinced that bdf should be treated differently.
> 
> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> other than it happens to be the PDF for PCI devices. Netdev called
> this bus_info

Are there non pci devices in the subsystem?
I can rename to a more fitting name, will change to bus_info unless someone has
a better idea.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* RE: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-08 13:03             ` Gal Pressman
@ 2020-11-08 14:36               ` Parav Pandit
  2020-11-08 23:49               ` Jason Gunthorpe
  1 sibling, 0 replies; 25+ messages in thread
From: Parav Pandit @ 2020-11-08 14:36 UTC (permalink / raw)
  To: Gal Pressman, Jason Gunthorpe; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma



> From: Gal Pressman <galpress@amazon.com>
> Sent: Sunday, November 8, 2020 6:34 PM
> 
> On 05/11/2020 22:00, Jason Gunthorpe wrote:
> > On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> >> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> >>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>>>> Add the ability to query the device's bdf through rdma tool
> >>>>>>> netlink command (in addition to the sysfs infra).
> >>>>>>>
> >>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>>>
> >>>>>> Why? What is the use case?
> >>>>>
> >>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>>>
> >>>> When taking system topology into consideration you need some way to
> >>>> pair the ibdev and bdf, especially when working with multiple devices.
> >>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> >>>
> >>> You are supposed to use sysfs
> >>>
> >>> /sys/class/infiniband/ibp0s9/device
> >>>
> >>> Should always be the physical device
> >>>
> >>>> Why rdma tool? Because it's more intuitive than sysfs.
> >>>
> >>> But we generally don't put this information into netlink BDF is just
> >>> the start, you need all the other topology information to make sense
> >>> of it, and all that is in sysfs only already
> >>
> >> As the commit message says, it's in addition to the device sysfs.
> >>
> >> Many (if not most) of the existing rdma netlink commands are
> >> duplicates of some sysfs entries, but show it in a more "modern" way.
> >> I'm not convinced that bdf should be treated differently.
> >
> > Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> > other than it happens to be the PDF for PCI devices. Netdev called
> > this bus_info
> 
> Are there non pci devices in the subsystem?
Yes. They are coming over auxiliary bus, waiting for the bus and Leon's patchset [2] to be merged.

> I can rename to a more fitting name, will change to bus_info unless someone
> has a better idea.
Yes. I guess you missed the suggestion given in [1].
Basically adding bus name and device name will generate unique bus+device information.
This is generic, not specific to PCI.
RDMA_NLDEV_ATTR_PARENT_DEV_NAME, RDMA_NLDEV_ATTR_PARENT_DEV_BUS_NAME.

[1] https://lore.kernel.org/linux-rdma/cd3f2926-0491-8540-d6b1-534014190bae@amazon.com/T/#ma5f71e14abae23fb67a52ff06e74600ce1489e79
[2] https://lore.kernel.org/linux-rdma/DM6PR11MB28417902253469FC9ABB72F0DDEE0@DM6PR11MB2841.namprd11.prod.outlook.com/T/#m37d9d24903fff0e99e7fec59933d4fe6e6a5162b


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-08 13:03             ` Gal Pressman
  2020-11-08 14:36               ` Parav Pandit
@ 2020-11-08 23:49               ` Jason Gunthorpe
  2020-11-09  5:09                 ` Leon Romanovsky
  2020-11-09  9:03                 ` Gal Pressman
  1 sibling, 2 replies; 25+ messages in thread
From: Jason Gunthorpe @ 2020-11-08 23:49 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
> On 05/11/2020 22:00, Jason Gunthorpe wrote:
> > On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> >> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> >>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>>>> Add the ability to query the device's bdf through rdma tool netlink
> >>>>>>> command (in addition to the sysfs infra).
> >>>>>>>
> >>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>>>
> >>>>>> Why? What is the use case?
> >>>>>
> >>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>>>
> >>>> When taking system topology into consideration you need some way to pair the
> >>>> ibdev and bdf, especially when working with multiple devices.
> >>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> >>>
> >>> You are supposed to use sysfs
> >>>
> >>> /sys/class/infiniband/ibp0s9/device
> >>>
> >>> Should always be the physical device
> >>>
> >>>> Why rdma tool? Because it's more intuitive than sysfs.
> >>>
> >>> But we generally don't put this information into netlink BDF is just
> >>> the start, you need all the other topology information to make sense
> >>> of it, and all that is in sysfs only already
> >>
> >> As the commit message says, it's in addition to the device sysfs.
> >>
> >> Many (if not most) of the existing rdma netlink commands are duplicates of some
> >> sysfs entries, but show it in a more "modern" way.
> >> I'm not convinced that bdf should be treated differently.
> > 
> > Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> > other than it happens to be the PDF for PCI devices. Netdev called
> > this bus_info
> 
> Are there non pci devices in the subsystem?

Yes, HNS uses non-pci devices

> I can rename to a more fitting name, will change to bus_info unless
> someone has a better idea.

The thing is, is is still useless. You have to consult sysfs to
understand what bus it is scoped on to do anything further with
it. Can't just assume it is PCI.

Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-08 23:49               ` Jason Gunthorpe
@ 2020-11-09  5:09                 ` Leon Romanovsky
  2020-11-09  9:03                   ` Gal Pressman
  2020-11-09  9:03                 ` Gal Pressman
  1 sibling, 1 reply; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-09  5:09 UTC (permalink / raw)
  To: Jason Gunthorpe, Gal Pressman; +Cc: Doug Ledford, linux-rdma

On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
> > On 05/11/2020 22:00, Jason Gunthorpe wrote:
> > > On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> > >> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> > >>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> > >>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> > >>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> > >>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> > >>>>>>> Add the ability to query the device's bdf through rdma tool netlink
> > >>>>>>> command (in addition to the sysfs infra).
> > >>>>>>>
> > >>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> > >>>>>>
> > >>>>>> Why? What is the use case?
> > >>>>>
> > >>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> > >>>>
> > >>>> When taking system topology into consideration you need some way to pair the
> > >>>> ibdev and bdf, especially when working with multiple devices.
> > >>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> > >>>
> > >>> You are supposed to use sysfs
> > >>>
> > >>> /sys/class/infiniband/ibp0s9/device
> > >>>
> > >>> Should always be the physical device
> > >>>
> > >>>> Why rdma tool? Because it's more intuitive than sysfs.
> > >>>
> > >>> But we generally don't put this information into netlink BDF is just
> > >>> the start, you need all the other topology information to make sense
> > >>> of it, and all that is in sysfs only already
> > >>
> > >> As the commit message says, it's in addition to the device sysfs.
> > >>
> > >> Many (if not most) of the existing rdma netlink commands are duplicates of some
> > >> sysfs entries, but show it in a more "modern" way.
> > >> I'm not convinced that bdf should be treated differently.
> > >
> > > Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> > > other than it happens to be the PDF for PCI devices. Netdev called
> > > this bus_info
> >
> > Are there non pci devices in the subsystem?
>
> Yes, HNS uses non-pci devices
>
> > I can rename to a more fitting name, will change to bus_info unless
> > someone has a better idea.
>
> The thing is, is is still useless. You have to consult sysfs to
> understand what bus it is scoped on to do anything further with
> it. Can't just assume it is PCI.

Can anyone please remind me why are we doing it?
What problem do you solve here by adding new nldev attributes?

Thanks

>
> Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09  5:09                 ` Leon Romanovsky
@ 2020-11-09  9:03                   ` Gal Pressman
  2020-11-09 11:55                     ` Leon Romanovsky
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-09  9:03 UTC (permalink / raw)
  To: Leon Romanovsky, Jason Gunthorpe; +Cc: Doug Ledford, linux-rdma


On 09/11/2020 7:09, Leon Romanovsky wrote:
> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>>>>>>> command (in addition to the sysfs infra).
>>>>>>>>>>
>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>>>>>>
>>>>>>>>> Why? What is the use case?
>>>>>>>>
>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>>>>>>
>>>>>>> When taking system topology into consideration you need some way to pair the
>>>>>>> ibdev and bdf, especially when working with multiple devices.
>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
>>>>>>
>>>>>> You are supposed to use sysfs
>>>>>>
>>>>>> /sys/class/infiniband/ibp0s9/device
>>>>>>
>>>>>> Should always be the physical device
>>>>>>
>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
>>>>>>
>>>>>> But we generally don't put this information into netlink BDF is just
>>>>>> the start, you need all the other topology information to make sense
>>>>>> of it, and all that is in sysfs only already
>>>>>
>>>>> As the commit message says, it's in addition to the device sysfs.
>>>>>
>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
>>>>> sysfs entries, but show it in a more "modern" way.
>>>>> I'm not convinced that bdf should be treated differently.
>>>>
>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
>>>> other than it happens to be the PDF for PCI devices. Netdev called
>>>> this bus_info
>>>
>>> Are there non pci devices in the subsystem?
>>
>> Yes, HNS uses non-pci devices
>>
>>> I can rename to a more fitting name, will change to bus_info unless
>>> someone has a better idea.
>>
>> The thing is, is is still useless. You have to consult sysfs to
>> understand what bus it is scoped on to do anything further with
>> it. Can't just assume it is PCI.
> 
> Can anyone please remind me why are we doing it?
> What problem do you solve here by adding new nldev attributes?

https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-08 23:49               ` Jason Gunthorpe
  2020-11-09  5:09                 ` Leon Romanovsky
@ 2020-11-09  9:03                 ` Gal Pressman
  2020-11-09 17:57                   ` Jason Gunthorpe
  1 sibling, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-09  9:03 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On 09/11/2020 1:49, Jason Gunthorpe wrote:
> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>>>>>> command (in addition to the sysfs infra).
>>>>>>>>>
>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>>>>>
>>>>>>>> Why? What is the use case?
>>>>>>>
>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>>>>>
>>>>>> When taking system topology into consideration you need some way to pair the
>>>>>> ibdev and bdf, especially when working with multiple devices.
>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
>>>>>
>>>>> You are supposed to use sysfs
>>>>>
>>>>> /sys/class/infiniband/ibp0s9/device
>>>>>
>>>>> Should always be the physical device
>>>>>
>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
>>>>>
>>>>> But we generally don't put this information into netlink BDF is just
>>>>> the start, you need all the other topology information to make sense
>>>>> of it, and all that is in sysfs only already
>>>>
>>>> As the commit message says, it's in addition to the device sysfs.
>>>>
>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
>>>> sysfs entries, but show it in a more "modern" way.
>>>> I'm not convinced that bdf should be treated differently.
>>>
>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
>>> other than it happens to be the PDF for PCI devices. Netdev called
>>> this bus_info
>>
>> Are there non pci devices in the subsystem?
> 
> Yes, HNS uses non-pci devices
> 
>> I can rename to a more fitting name, will change to bus_info unless
>> someone has a better idea.
> 
> The thing is, is is still useless. You have to consult sysfs to
> understand what bus it is scoped on to do anything further with
> it. Can't just assume it is PCI.

This can be solved with Parav's suggestion.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09  9:03                   ` Gal Pressman
@ 2020-11-09 11:55                     ` Leon Romanovsky
  2020-11-09 12:27                       ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-09 11:55 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
>
> On 09/11/2020 7:09, Leon Romanovsky wrote:
> > On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
> >> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
> >>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
> >>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> >>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> >>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
> >>>>>>>>>> command (in addition to the sysfs infra).
> >>>>>>>>>>
> >>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>>>>>>
> >>>>>>>>> Why? What is the use case?
> >>>>>>>>
> >>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>>>>>>
> >>>>>>> When taking system topology into consideration you need some way to pair the
> >>>>>>> ibdev and bdf, especially when working with multiple devices.
> >>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> >>>>>>
> >>>>>> You are supposed to use sysfs
> >>>>>>
> >>>>>> /sys/class/infiniband/ibp0s9/device
> >>>>>>
> >>>>>> Should always be the physical device
> >>>>>>
> >>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
> >>>>>>
> >>>>>> But we generally don't put this information into netlink BDF is just
> >>>>>> the start, you need all the other topology information to make sense
> >>>>>> of it, and all that is in sysfs only already
> >>>>>
> >>>>> As the commit message says, it's in addition to the device sysfs.
> >>>>>
> >>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
> >>>>> sysfs entries, but show it in a more "modern" way.
> >>>>> I'm not convinced that bdf should be treated differently.
> >>>>
> >>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> >>>> other than it happens to be the PDF for PCI devices. Netdev called
> >>>> this bus_info
> >>>
> >>> Are there non pci devices in the subsystem?
> >>
> >> Yes, HNS uses non-pci devices
> >>
> >>> I can rename to a more fitting name, will change to bus_info unless
> >>> someone has a better idea.
> >>
> >> The thing is, is is still useless. You have to consult sysfs to
> >> understand what bus it is scoped on to do anything further with
> >> it. Can't just assume it is PCI.
> >
> > Can anyone please remind me why are we doing it?
> > What problem do you solve here by adding new nldev attributes?
>
> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/

Thanks, but IMHO it doesn't answer on the question about the problem.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 11:55                     ` Leon Romanovsky
@ 2020-11-09 12:27                       ` Gal Pressman
  2020-11-09 12:32                         ` Leon Romanovsky
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-09 12:27 UTC (permalink / raw)
  To: Leon Romanovsky; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On 09/11/2020 13:55, Leon Romanovsky wrote:
> On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
>>
>> On 09/11/2020 7:09, Leon Romanovsky wrote:
>>> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
>>>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
>>>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
>>>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
>>>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
>>>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>>>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>>>>>>>>> command (in addition to the sysfs infra).
>>>>>>>>>>>>
>>>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>>>>>>>>
>>>>>>>>>>> Why? What is the use case?
>>>>>>>>>>
>>>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>>>>>>>>
>>>>>>>>> When taking system topology into consideration you need some way to pair the
>>>>>>>>> ibdev and bdf, especially when working with multiple devices.
>>>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
>>>>>>>>
>>>>>>>> You are supposed to use sysfs
>>>>>>>>
>>>>>>>> /sys/class/infiniband/ibp0s9/device
>>>>>>>>
>>>>>>>> Should always be the physical device
>>>>>>>>
>>>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
>>>>>>>>
>>>>>>>> But we generally don't put this information into netlink BDF is just
>>>>>>>> the start, you need all the other topology information to make sense
>>>>>>>> of it, and all that is in sysfs only already
>>>>>>>
>>>>>>> As the commit message says, it's in addition to the device sysfs.
>>>>>>>
>>>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
>>>>>>> sysfs entries, but show it in a more "modern" way.
>>>>>>> I'm not convinced that bdf should be treated differently.
>>>>>>
>>>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
>>>>>> other than it happens to be the PDF for PCI devices. Netdev called
>>>>>> this bus_info
>>>>>
>>>>> Are there non pci devices in the subsystem?
>>>>
>>>> Yes, HNS uses non-pci devices
>>>>
>>>>> I can rename to a more fitting name, will change to bus_info unless
>>>>> someone has a better idea.
>>>>
>>>> The thing is, is is still useless. You have to consult sysfs to
>>>> understand what bus it is scoped on to do anything further with
>>>> it. Can't just assume it is PCI.
>>>
>>> Can anyone please remind me why are we doing it?
>>> What problem do you solve here by adding new nldev attributes?
>>
>> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/
> 
> Thanks, but IMHO it doesn't answer on the question about the problem.

For example, in an instance with multiple NICs and GPUs, it's common to examine
the devices topology and distances, device bdfs are needed for that.

Also, when analyzing dmesg logs the prints contain the ibdev name, which is not
always enough when trying to debug the corresponding physical device.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 12:27                       ` Gal Pressman
@ 2020-11-09 12:32                         ` Leon Romanovsky
  2020-11-09 12:47                           ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-09 12:32 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On Mon, Nov 09, 2020 at 02:27:16PM +0200, Gal Pressman wrote:
> On 09/11/2020 13:55, Leon Romanovsky wrote:
> > On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
> >>
> >> On 09/11/2020 7:09, Leon Romanovsky wrote:
> >>> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
> >>>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
> >>>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
> >>>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> >>>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> >>>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >>>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
> >>>>>>>>>>>> command (in addition to the sysfs infra).
> >>>>>>>>>>>>
> >>>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>>>>>>>>
> >>>>>>>>>>> Why? What is the use case?
> >>>>>>>>>>
> >>>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>>>>>>>>
> >>>>>>>>> When taking system topology into consideration you need some way to pair the
> >>>>>>>>> ibdev and bdf, especially when working with multiple devices.
> >>>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> >>>>>>>>
> >>>>>>>> You are supposed to use sysfs
> >>>>>>>>
> >>>>>>>> /sys/class/infiniband/ibp0s9/device
> >>>>>>>>
> >>>>>>>> Should always be the physical device
> >>>>>>>>
> >>>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
> >>>>>>>>
> >>>>>>>> But we generally don't put this information into netlink BDF is just
> >>>>>>>> the start, you need all the other topology information to make sense
> >>>>>>>> of it, and all that is in sysfs only already
> >>>>>>>
> >>>>>>> As the commit message says, it's in addition to the device sysfs.
> >>>>>>>
> >>>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
> >>>>>>> sysfs entries, but show it in a more "modern" way.
> >>>>>>> I'm not convinced that bdf should be treated differently.
> >>>>>>
> >>>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> >>>>>> other than it happens to be the PDF for PCI devices. Netdev called
> >>>>>> this bus_info
> >>>>>
> >>>>> Are there non pci devices in the subsystem?
> >>>>
> >>>> Yes, HNS uses non-pci devices
> >>>>
> >>>>> I can rename to a more fitting name, will change to bus_info unless
> >>>>> someone has a better idea.
> >>>>
> >>>> The thing is, is is still useless. You have to consult sysfs to
> >>>> understand what bus it is scoped on to do anything further with
> >>>> it. Can't just assume it is PCI.
> >>>
> >>> Can anyone please remind me why are we doing it?
> >>> What problem do you solve here by adding new nldev attributes?
> >>
> >> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/
> >
> > Thanks, but IMHO it doesn't answer on the question about the problem.
>
> For example, in an instance with multiple NICs and GPUs, it's common to examine
> the devices topology and distances, device bdfs are needed for that.
>
> Also, when analyzing dmesg logs the prints contain the ibdev name, which is not
> always enough when trying to debug the corresponding physical device.

Gal,

I'm asking which problem will solve new nldev and not why BDF is important. :)

Thanks

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 12:32                         ` Leon Romanovsky
@ 2020-11-09 12:47                           ` Gal Pressman
  2020-11-09 13:02                             ` Leon Romanovsky
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-09 12:47 UTC (permalink / raw)
  To: Leon Romanovsky; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On 09/11/2020 14:32, Leon Romanovsky wrote:
> On Mon, Nov 09, 2020 at 02:27:16PM +0200, Gal Pressman wrote:
>> On 09/11/2020 13:55, Leon Romanovsky wrote:
>>> On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
>>>>
>>>> On 09/11/2020 7:09, Leon Romanovsky wrote:
>>>>> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
>>>>>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
>>>>>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
>>>>>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
>>>>>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
>>>>>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>>>>>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>>>>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>>>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>>>>>>>>>>> command (in addition to the sysfs infra).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Why? What is the use case?
>>>>>>>>>>>>
>>>>>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>>>>>>>>>>
>>>>>>>>>>> When taking system topology into consideration you need some way to pair the
>>>>>>>>>>> ibdev and bdf, especially when working with multiple devices.
>>>>>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
>>>>>>>>>>
>>>>>>>>>> You are supposed to use sysfs
>>>>>>>>>>
>>>>>>>>>> /sys/class/infiniband/ibp0s9/device
>>>>>>>>>>
>>>>>>>>>> Should always be the physical device
>>>>>>>>>>
>>>>>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
>>>>>>>>>>
>>>>>>>>>> But we generally don't put this information into netlink BDF is just
>>>>>>>>>> the start, you need all the other topology information to make sense
>>>>>>>>>> of it, and all that is in sysfs only already
>>>>>>>>>
>>>>>>>>> As the commit message says, it's in addition to the device sysfs.
>>>>>>>>>
>>>>>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
>>>>>>>>> sysfs entries, but show it in a more "modern" way.
>>>>>>>>> I'm not convinced that bdf should be treated differently.
>>>>>>>>
>>>>>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
>>>>>>>> other than it happens to be the PDF for PCI devices. Netdev called
>>>>>>>> this bus_info
>>>>>>>
>>>>>>> Are there non pci devices in the subsystem?
>>>>>>
>>>>>> Yes, HNS uses non-pci devices
>>>>>>
>>>>>>> I can rename to a more fitting name, will change to bus_info unless
>>>>>>> someone has a better idea.
>>>>>>
>>>>>> The thing is, is is still useless. You have to consult sysfs to
>>>>>> understand what bus it is scoped on to do anything further with
>>>>>> it. Can't just assume it is PCI.
>>>>>
>>>>> Can anyone please remind me why are we doing it?
>>>>> What problem do you solve here by adding new nldev attributes?
>>>>
>>>> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/
>>>
>>> Thanks, but IMHO it doesn't answer on the question about the problem.
>>
>> For example, in an instance with multiple NICs and GPUs, it's common to examine
>> the devices topology and distances, device bdfs are needed for that.
>>
>> Also, when analyzing dmesg logs the prints contain the ibdev name, which is not
>> always enough when trying to debug the corresponding physical device.
> 
> Gal,
> 
> I'm asking which problem will solve new nldev and not why BDF is important. :)

This patch follows the implementation of other fields in fill_dev_info() such as
port index, fw version, node guid, sys image guid, node type, dev protocol, etc,
which also exist in sysfs.

You added most of these new nldevs not long ago, so I find your question a bit
confusing.. Can you please explain your concerns and why you think bdf is different?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 12:47                           ` Gal Pressman
@ 2020-11-09 13:02                             ` Leon Romanovsky
  2020-11-09 13:52                               ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-09 13:02 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On Mon, Nov 09, 2020 at 02:47:07PM +0200, Gal Pressman wrote:
> On 09/11/2020 14:32, Leon Romanovsky wrote:
> > On Mon, Nov 09, 2020 at 02:27:16PM +0200, Gal Pressman wrote:
> >> On 09/11/2020 13:55, Leon Romanovsky wrote:
> >>> On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
> >>>>
> >>>> On 09/11/2020 7:09, Leon Romanovsky wrote:
> >>>>> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
> >>>>>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
> >>>>>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
> >>>>>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> >>>>>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> >>>>>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >>>>>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>>>>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>>>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
> >>>>>>>>>>>>>> command (in addition to the sysfs infra).
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Why? What is the use case?
> >>>>>>>>>>>>
> >>>>>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>>>>>>>>>>
> >>>>>>>>>>> When taking system topology into consideration you need some way to pair the
> >>>>>>>>>>> ibdev and bdf, especially when working with multiple devices.
> >>>>>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> >>>>>>>>>>
> >>>>>>>>>> You are supposed to use sysfs
> >>>>>>>>>>
> >>>>>>>>>> /sys/class/infiniband/ibp0s9/device
> >>>>>>>>>>
> >>>>>>>>>> Should always be the physical device
> >>>>>>>>>>
> >>>>>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
> >>>>>>>>>>
> >>>>>>>>>> But we generally don't put this information into netlink BDF is just
> >>>>>>>>>> the start, you need all the other topology information to make sense
> >>>>>>>>>> of it, and all that is in sysfs only already
> >>>>>>>>>
> >>>>>>>>> As the commit message says, it's in addition to the device sysfs.
> >>>>>>>>>
> >>>>>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
> >>>>>>>>> sysfs entries, but show it in a more "modern" way.
> >>>>>>>>> I'm not convinced that bdf should be treated differently.
> >>>>>>>>
> >>>>>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> >>>>>>>> other than it happens to be the PDF for PCI devices. Netdev called
> >>>>>>>> this bus_info
> >>>>>>>
> >>>>>>> Are there non pci devices in the subsystem?
> >>>>>>
> >>>>>> Yes, HNS uses non-pci devices
> >>>>>>
> >>>>>>> I can rename to a more fitting name, will change to bus_info unless
> >>>>>>> someone has a better idea.
> >>>>>>
> >>>>>> The thing is, is is still useless. You have to consult sysfs to
> >>>>>> understand what bus it is scoped on to do anything further with
> >>>>>> it. Can't just assume it is PCI.
> >>>>>
> >>>>> Can anyone please remind me why are we doing it?
> >>>>> What problem do you solve here by adding new nldev attributes?
> >>>>
> >>>> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/
> >>>
> >>> Thanks, but IMHO it doesn't answer on the question about the problem.
> >>
> >> For example, in an instance with multiple NICs and GPUs, it's common to examine
> >> the devices topology and distances, device bdfs are needed for that.
> >>
> >> Also, when analyzing dmesg logs the prints contain the ibdev name, which is not
> >> always enough when trying to debug the corresponding physical device.
> >
> > Gal,
> >
> > I'm asking which problem will solve new nldev and not why BDF is important. :)
>
> This patch follows the implementation of other fields in fill_dev_info() such as
> port index, fw version, node guid, sys image guid, node type, dev protocol, etc,
> which also exist in sysfs.
>
> You added most of these new nldevs not long ago, so I find your question a bit
> confusing.. Can you please explain your concerns and why you think bdf is different?

Almost all fields that you mentioned were needed to implement rdma_rename
utility that followed systemd internal implementation and/or were used in
the rdma-core.

The FW version is clearly an exemption to the above.

So I'm trying to understand the rationale behind BDF and how it will
work with different bus variants that we will have. Like Parav said,
the IB is connected to auxiliary bus (no BDF) and will have parent
with BDF too at the same time.

Thanks

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 13:02                             ` Leon Romanovsky
@ 2020-11-09 13:52                               ` Gal Pressman
  2020-11-09 14:12                                 ` Leon Romanovsky
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-09 13:52 UTC (permalink / raw)
  To: Leon Romanovsky; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On 09/11/2020 15:02, Leon Romanovsky wrote:
> On Mon, Nov 09, 2020 at 02:47:07PM +0200, Gal Pressman wrote:
>> On 09/11/2020 14:32, Leon Romanovsky wrote:
>>> On Mon, Nov 09, 2020 at 02:27:16PM +0200, Gal Pressman wrote:
>>>> On 09/11/2020 13:55, Leon Romanovsky wrote:
>>>>> On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
>>>>>>
>>>>>> On 09/11/2020 7:09, Leon Romanovsky wrote:
>>>>>>> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
>>>>>>>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
>>>>>>>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
>>>>>>>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
>>>>>>>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
>>>>>>>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
>>>>>>>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
>>>>>>>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
>>>>>>>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
>>>>>>>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
>>>>>>>>>>>>>>>> command (in addition to the sysfs infra).
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Why? What is the use case?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
>>>>>>>>>>>>>
>>>>>>>>>>>>> When taking system topology into consideration you need some way to pair the
>>>>>>>>>>>>> ibdev and bdf, especially when working with multiple devices.
>>>>>>>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
>>>>>>>>>>>>
>>>>>>>>>>>> You are supposed to use sysfs
>>>>>>>>>>>>
>>>>>>>>>>>> /sys/class/infiniband/ibp0s9/device
>>>>>>>>>>>>
>>>>>>>>>>>> Should always be the physical device
>>>>>>>>>>>>
>>>>>>>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
>>>>>>>>>>>>
>>>>>>>>>>>> But we generally don't put this information into netlink BDF is just
>>>>>>>>>>>> the start, you need all the other topology information to make sense
>>>>>>>>>>>> of it, and all that is in sysfs only already
>>>>>>>>>>>
>>>>>>>>>>> As the commit message says, it's in addition to the device sysfs.
>>>>>>>>>>>
>>>>>>>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
>>>>>>>>>>> sysfs entries, but show it in a more "modern" way.
>>>>>>>>>>> I'm not convinced that bdf should be treated differently.
>>>>>>>>>>
>>>>>>>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
>>>>>>>>>> other than it happens to be the PDF for PCI devices. Netdev called
>>>>>>>>>> this bus_info
>>>>>>>>>
>>>>>>>>> Are there non pci devices in the subsystem?
>>>>>>>>
>>>>>>>> Yes, HNS uses non-pci devices
>>>>>>>>
>>>>>>>>> I can rename to a more fitting name, will change to bus_info unless
>>>>>>>>> someone has a better idea.
>>>>>>>>
>>>>>>>> The thing is, is is still useless. You have to consult sysfs to
>>>>>>>> understand what bus it is scoped on to do anything further with
>>>>>>>> it. Can't just assume it is PCI.
>>>>>>>
>>>>>>> Can anyone please remind me why are we doing it?
>>>>>>> What problem do you solve here by adding new nldev attributes?
>>>>>>
>>>>>> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/
>>>>>
>>>>> Thanks, but IMHO it doesn't answer on the question about the problem.
>>>>
>>>> For example, in an instance with multiple NICs and GPUs, it's common to examine
>>>> the devices topology and distances, device bdfs are needed for that.
>>>>
>>>> Also, when analyzing dmesg logs the prints contain the ibdev name, which is not
>>>> always enough when trying to debug the corresponding physical device.
>>>
>>> Gal,
>>>
>>> I'm asking which problem will solve new nldev and not why BDF is important. :)
>>
>> This patch follows the implementation of other fields in fill_dev_info() such as
>> port index, fw version, node guid, sys image guid, node type, dev protocol, etc,
>> which also exist in sysfs.
>>
>> You added most of these new nldevs not long ago, so I find your question a bit
>> confusing.. Can you please explain your concerns and why you think bdf is different?
> 
> Almost all fields that you mentioned were needed to implement rdma_rename
> utility that followed systemd internal implementation and/or were used in
> the rdma-core.
> 
> The FW version is clearly an exemption to the above.
> 
> So I'm trying to understand the rationale behind BDF and how it will
> work with different bus variants that we will have. Like Parav said,
> the IB is connected to auxiliary bus (no BDF) and will have parent
> with BDF too at the same time.

We can review the different cases and make sure it works as expected (and what's
expected), but let's first reach an agreement if I should continue with this
work or not.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 13:52                               ` Gal Pressman
@ 2020-11-09 14:12                                 ` Leon Romanovsky
  0 siblings, 0 replies; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-09 14:12 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Jason Gunthorpe, Doug Ledford, linux-rdma

On Mon, Nov 09, 2020 at 03:52:29PM +0200, Gal Pressman wrote:
> On 09/11/2020 15:02, Leon Romanovsky wrote:
> > On Mon, Nov 09, 2020 at 02:47:07PM +0200, Gal Pressman wrote:
> >> On 09/11/2020 14:32, Leon Romanovsky wrote:
> >>> On Mon, Nov 09, 2020 at 02:27:16PM +0200, Gal Pressman wrote:
> >>>> On 09/11/2020 13:55, Leon Romanovsky wrote:
> >>>>> On Mon, Nov 09, 2020 at 11:03:25AM +0200, Gal Pressman wrote:
> >>>>>>
> >>>>>> On 09/11/2020 7:09, Leon Romanovsky wrote:
> >>>>>>> On Sun, Nov 08, 2020 at 07:49:35PM -0400, Jason Gunthorpe wrote:
> >>>>>>>> On Sun, Nov 08, 2020 at 03:03:45PM +0200, Gal Pressman wrote:
> >>>>>>>>> On 05/11/2020 22:00, Jason Gunthorpe wrote:
> >>>>>>>>>> On Tue, Nov 03, 2020 at 05:45:26PM +0200, Gal Pressman wrote:
> >>>>>>>>>>> On 03/11/2020 16:22, Jason Gunthorpe wrote:
> >>>>>>>>>>>> On Tue, Nov 03, 2020 at 04:11:19PM +0200, Gal Pressman wrote:
> >>>>>>>>>>>>> On 03/11/2020 15:57, Leon Romanovsky wrote:
> >>>>>>>>>>>>>> On Tue, Nov 03, 2020 at 09:45:22AM -0400, Jason Gunthorpe wrote:
> >>>>>>>>>>>>>>> On Tue, Nov 03, 2020 at 03:26:27PM +0200, Gal Pressman wrote:
> >>>>>>>>>>>>>>>> Add the ability to query the device's bdf through rdma tool netlink
> >>>>>>>>>>>>>>>> command (in addition to the sysfs infra).
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> In case of virtual devices (rxe/siw), the netdev bdf will be shown.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> Why? What is the use case?
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Right, and why isn't netdev (RDMA_NLDEV_ATTR_NDEV_NAME) enough?
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> When taking system topology into consideration you need some way to pair the
> >>>>>>>>>>>>> ibdev and bdf, especially when working with multiple devices.
> >>>>>>>>>>>>> The netdev name doesn't exist on devices with no netdevs (IB, EFA).
> >>>>>>>>>>>>
> >>>>>>>>>>>> You are supposed to use sysfs
> >>>>>>>>>>>>
> >>>>>>>>>>>> /sys/class/infiniband/ibp0s9/device
> >>>>>>>>>>>>
> >>>>>>>>>>>> Should always be the physical device
> >>>>>>>>>>>>
> >>>>>>>>>>>>> Why rdma tool? Because it's more intuitive than sysfs.
> >>>>>>>>>>>>
> >>>>>>>>>>>> But we generally don't put this information into netlink BDF is just
> >>>>>>>>>>>> the start, you need all the other topology information to make sense
> >>>>>>>>>>>> of it, and all that is in sysfs only already
> >>>>>>>>>>>
> >>>>>>>>>>> As the commit message says, it's in addition to the device sysfs.
> >>>>>>>>>>>
> >>>>>>>>>>> Many (if not most) of the existing rdma netlink commands are duplicates of some
> >>>>>>>>>>> sysfs entries, but show it in a more "modern" way.
> >>>>>>>>>>> I'm not convinced that bdf should be treated differently.
> >>>>>>>>>>
> >>>>>>>>>> Why did you call it BDF anyhow? it has nothing to do with PCI BDF
> >>>>>>>>>> other than it happens to be the PDF for PCI devices. Netdev called
> >>>>>>>>>> this bus_info
> >>>>>>>>>
> >>>>>>>>> Are there non pci devices in the subsystem?
> >>>>>>>>
> >>>>>>>> Yes, HNS uses non-pci devices
> >>>>>>>>
> >>>>>>>>> I can rename to a more fitting name, will change to bus_info unless
> >>>>>>>>> someone has a better idea.
> >>>>>>>>
> >>>>>>>> The thing is, is is still useless. You have to consult sysfs to
> >>>>>>>> understand what bus it is scoped on to do anything further with
> >>>>>>>> it. Can't just assume it is PCI.
> >>>>>>>
> >>>>>>> Can anyone please remind me why are we doing it?
> >>>>>>> What problem do you solve here by adding new nldev attributes?
> >>>>>>
> >>>>>> https://lore.kernel.org/linux-rdma/0825e1bf-f913-d2c1-ad3f-35ba3d6b75ef@amazon.com/
> >>>>>
> >>>>> Thanks, but IMHO it doesn't answer on the question about the problem.
> >>>>
> >>>> For example, in an instance with multiple NICs and GPUs, it's common to examine
> >>>> the devices topology and distances, device bdfs are needed for that.
> >>>>
> >>>> Also, when analyzing dmesg logs the prints contain the ibdev name, which is not
> >>>> always enough when trying to debug the corresponding physical device.
> >>>
> >>> Gal,
> >>>
> >>> I'm asking which problem will solve new nldev and not why BDF is important. :)
> >>
> >> This patch follows the implementation of other fields in fill_dev_info() such as
> >> port index, fw version, node guid, sys image guid, node type, dev protocol, etc,
> >> which also exist in sysfs.
> >>
> >> You added most of these new nldevs not long ago, so I find your question a bit
> >> confusing.. Can you please explain your concerns and why you think bdf is different?
> >
> > Almost all fields that you mentioned were needed to implement rdma_rename
> > utility that followed systemd internal implementation and/or were used in
> > the rdma-core.
> >
> > The FW version is clearly an exemption to the above.
> >
> > So I'm trying to understand the rationale behind BDF and how it will
> > work with different bus variants that we will have. Like Parav said,
> > the IB is connected to auxiliary bus (no BDF) and will have parent
> > with BDF too at the same time.
>
> We can review the different cases and make sure it works as expected (and what's
> expected), but let's first reach an agreement if I should continue with this
> work or not.

I don't know.

Thanks

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09  9:03                 ` Gal Pressman
@ 2020-11-09 17:57                   ` Jason Gunthorpe
  2020-11-10  7:49                     ` Gal Pressman
  0 siblings, 1 reply; 25+ messages in thread
From: Jason Gunthorpe @ 2020-11-09 17:57 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On Mon, Nov 09, 2020 at 11:03:47AM +0200, Gal Pressman wrote:

> > The thing is, is is still useless. You have to consult sysfs to
> > understand what bus it is scoped on to do anything further with
> > it. Can't just assume it is PCI.
> 
> This can be solved with Parav's suggestion.

Now you are adding more stuff.

What is wrong with reading sysfs? sysfs is where topology information
lives, why do we need to denormalize things?

Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-09 17:57                   ` Jason Gunthorpe
@ 2020-11-10  7:49                     ` Gal Pressman
  2020-11-10 13:41                       ` Jason Gunthorpe
  0 siblings, 1 reply; 25+ messages in thread
From: Gal Pressman @ 2020-11-10  7:49 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On 09/11/2020 19:57, Jason Gunthorpe wrote:
> On Mon, Nov 09, 2020 at 11:03:47AM +0200, Gal Pressman wrote:
> 
>>> The thing is, is is still useless. You have to consult sysfs to
>>> understand what bus it is scoped on to do anything further with
>>> it. Can't just assume it is PCI.
>>
>> This can be solved with Parav's suggestion.
> 
> Now you are adding more stuff.
> 
> What is wrong with reading sysfs? sysfs is where topology information
> lives, why do we need to denormalize things?

And yet you have lspci so you don't have to dig through the sysfs files by hand
for that topology.
Please drop this patch.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-10  7:49                     ` Gal Pressman
@ 2020-11-10 13:41                       ` Jason Gunthorpe
  2020-11-10 13:54                         ` Leon Romanovsky
  0 siblings, 1 reply; 25+ messages in thread
From: Jason Gunthorpe @ 2020-11-10 13:41 UTC (permalink / raw)
  To: Gal Pressman; +Cc: Leon Romanovsky, Doug Ledford, linux-rdma

On Tue, Nov 10, 2020 at 09:49:11AM +0200, Gal Pressman wrote:
> On 09/11/2020 19:57, Jason Gunthorpe wrote:
> > On Mon, Nov 09, 2020 at 11:03:47AM +0200, Gal Pressman wrote:
> > 
> >>> The thing is, is is still useless. You have to consult sysfs to
> >>> understand what bus it is scoped on to do anything further with
> >>> it. Can't just assume it is PCI.
> >>
> >> This can be solved with Parav's suggestion.
> > 
> > Now you are adding more stuff.
> > 
> > What is wrong with reading sysfs? sysfs is where topology information
> > lives, why do we need to denormalize things?
> 
> And yet you have lspci so you don't have to dig through the sysfs files by hand
> for that topology.
> Please drop this patch.

If you want to add something to rdma tool it can read sysfs and disply it

Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump
  2020-11-10 13:41                       ` Jason Gunthorpe
@ 2020-11-10 13:54                         ` Leon Romanovsky
  0 siblings, 0 replies; 25+ messages in thread
From: Leon Romanovsky @ 2020-11-10 13:54 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Gal Pressman, Doug Ledford, linux-rdma

On Tue, Nov 10, 2020 at 09:41:22AM -0400, Jason Gunthorpe wrote:
> On Tue, Nov 10, 2020 at 09:49:11AM +0200, Gal Pressman wrote:
> > On 09/11/2020 19:57, Jason Gunthorpe wrote:
> > > On Mon, Nov 09, 2020 at 11:03:47AM +0200, Gal Pressman wrote:
> > >
> > >>> The thing is, is is still useless. You have to consult sysfs to
> > >>> understand what bus it is scoped on to do anything further with
> > >>> it. Can't just assume it is PCI.
> > >>
> > >> This can be solved with Parav's suggestion.
> > >
> > > Now you are adding more stuff.
> > >
> > > What is wrong with reading sysfs? sysfs is where topology information
> > > lives, why do we need to denormalize things?
> >
> > And yet you have lspci so you don't have to dig through the sysfs files by hand
> > for that topology.
> > Please drop this patch.
>
> If you want to add something to rdma tool it can read sysfs and disply it

I tried it and it wasn't accepted well in netdev community.

Thanks

>
> Jason

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2020-11-10 13:54 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-03 13:26 [PATCH for-next] RDMA/nldev: Add parent bdf to device information dump Gal Pressman
2020-11-03 13:31 ` Parav Pandit
2020-11-03 13:45 ` Jason Gunthorpe
2020-11-03 13:57   ` Leon Romanovsky
2020-11-03 14:11     ` Gal Pressman
2020-11-03 14:22       ` Jason Gunthorpe
2020-11-03 15:45         ` Gal Pressman
2020-11-05 20:00           ` Jason Gunthorpe
2020-11-08 13:03             ` Gal Pressman
2020-11-08 14:36               ` Parav Pandit
2020-11-08 23:49               ` Jason Gunthorpe
2020-11-09  5:09                 ` Leon Romanovsky
2020-11-09  9:03                   ` Gal Pressman
2020-11-09 11:55                     ` Leon Romanovsky
2020-11-09 12:27                       ` Gal Pressman
2020-11-09 12:32                         ` Leon Romanovsky
2020-11-09 12:47                           ` Gal Pressman
2020-11-09 13:02                             ` Leon Romanovsky
2020-11-09 13:52                               ` Gal Pressman
2020-11-09 14:12                                 ` Leon Romanovsky
2020-11-09  9:03                 ` Gal Pressman
2020-11-09 17:57                   ` Jason Gunthorpe
2020-11-10  7:49                     ` Gal Pressman
2020-11-10 13:41                       ` Jason Gunthorpe
2020-11-10 13:54                         ` Leon Romanovsky

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.