mbox series

[rdma-next,0/4] Get IB port and node GUIDs through rtnetlink

Message ID 20191114133126.238128-1-leon@kernel.org
Headers show
Series Get IB port and node GUIDs through rtnetlink | expand

Message

Leon Romanovsky Nov. 14, 2019, 1:31 p.m. UTC
From: Leon Romanovsky <leonro@mellanox.com>

Hi,

This series from Danit extends RTNETLINK to provide IB port and node
GUIDs, which were configured for Infiniband VFs.

The functionality to set VF GUIDs already existed for a long time, and here
we are adding the missing "get" so that netlink will be symmetric
and various cloud orchestration tools will be able to manage such
VFs more naturally.

The iproute2 was extended too to present those GUIDs.

- ip link show <device>

For example:
- ip link set ib4 vf 0 node_guid 22:44:33:00:33:11:00:33
- ip link set ib4 vf 0 port_guid 10:21:33:12:00:11:22:10
- ip link show ib4
    ib4: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN mode DEFAULT group default qlen 256
    link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
    vf 0     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff,
    spoof checking off, NODE_GUID 22:44:33:00:33:11:00:33, PORT_GUID 10:21:33:12:00:11:22:10, link-state disable, trust off, query_rss off

Due to the fact that this series touches both net and RDMA, we assume
that it needs to be applied to our shared branch (mlx5-next) and pulled
later by Dave and Doug/Jason.

Thanks

Danit Goldberg (4):
  net/core: Add support for getting VF GUIDs
  IB/core: Add interfaces to get VF node and port GUIDs
  IB/ipoib: Add ndo operation for getting VFs GUID attributes
  IB/mlx5: Implement callbacks for getting VFs GUID attributes

 drivers/infiniband/core/device.c          |  1 +
 drivers/infiniband/core/verbs.c           | 10 ++++++++++
 drivers/infiniband/hw/mlx5/ib_virt.c      | 24 +++++++++++++++++++++++
 drivers/infiniband/hw/mlx5/main.c         |  1 +
 drivers/infiniband/hw/mlx5/mlx5_ib.h      |  3 +++
 drivers/infiniband/ulp/ipoib/ipoib_main.c | 10 ++++++++++
 include/linux/netdevice.h                 |  4 ++++
 include/rdma/ib_verbs.h                   |  6 ++++++
 net/core/rtnetlink.c                      | 11 +++++++++++
 9 files changed, 70 insertions(+)

--
2.20.1

Comments

Leon Romanovsky Nov. 18, 2019, 7:25 a.m. UTC | #1
On Thu, Nov 14, 2019 at 03:31:21PM +0200, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@mellanox.com>
>
> Hi,
>
> This series from Danit extends RTNETLINK to provide IB port and node
> GUIDs, which were configured for Infiniband VFs.
>
> The functionality to set VF GUIDs already existed for a long time, and here
> we are adding the missing "get" so that netlink will be symmetric
> and various cloud orchestration tools will be able to manage such
> VFs more naturally.
>
> The iproute2 was extended too to present those GUIDs.
>
> - ip link show <device>
>
> For example:
> - ip link set ib4 vf 0 node_guid 22:44:33:00:33:11:00:33
> - ip link set ib4 vf 0 port_guid 10:21:33:12:00:11:22:10
> - ip link show ib4
>     ib4: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN mode DEFAULT group default qlen 256
>     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
>     vf 0     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff,
>     spoof checking off, NODE_GUID 22:44:33:00:33:11:00:33, PORT_GUID 10:21:33:12:00:11:22:10, link-state disable, trust off, query_rss off
>
> Due to the fact that this series touches both net and RDMA, we assume
> that it needs to be applied to our shared branch (mlx5-next) and pulled
> later by Dave and Doug/Jason.
>
> Thanks
>
> Danit Goldberg (4):
>   net/core: Add support for getting VF GUIDs
>   IB/core: Add interfaces to get VF node and port GUIDs
>   IB/ipoib: Add ndo operation for getting VFs GUID attributes
>   IB/mlx5: Implement callbacks for getting VFs GUID attributes

Dave,

I see that you marked these patches as "not applicable" in patchworks.

Can I assume that you are OK with them and we can take them through RDMA
tree? If yes, can you give your Ack on the first patch?

Thanks
Leon Romanovsky Nov. 21, 2019, 5:36 p.m. UTC | #2
On Mon, Nov 18, 2019 at 07:25:02AM +0000, Leon Romanovsky wrote:
> On Thu, Nov 14, 2019 at 03:31:21PM +0200, Leon Romanovsky wrote:
> > From: Leon Romanovsky <leonro@mellanox.com>
> >
> > Hi,
> >
> > This series from Danit extends RTNETLINK to provide IB port and node
> > GUIDs, which were configured for Infiniband VFs.
> >
> > The functionality to set VF GUIDs already existed for a long time, and here
> > we are adding the missing "get" so that netlink will be symmetric
> > and various cloud orchestration tools will be able to manage such
> > VFs more naturally.
> >
> > The iproute2 was extended too to present those GUIDs.
> >
> > - ip link show <device>
> >
> > For example:
> > - ip link set ib4 vf 0 node_guid 22:44:33:00:33:11:00:33
> > - ip link set ib4 vf 0 port_guid 10:21:33:12:00:11:22:10
> > - ip link show ib4
> >     ib4: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN mode DEFAULT group default qlen 256
> >     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
> >     vf 0     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff,
> >     spoof checking off, NODE_GUID 22:44:33:00:33:11:00:33, PORT_GUID 10:21:33:12:00:11:22:10, link-state disable, trust off, query_rss off
> >
> > Due to the fact that this series touches both net and RDMA, we assume
> > that it needs to be applied to our shared branch (mlx5-next) and pulled
> > later by Dave and Doug/Jason.
> >
> > Thanks
> >
> > Danit Goldberg (4):
> >   net/core: Add support for getting VF GUIDs
> >   IB/core: Add interfaces to get VF node and port GUIDs
> >   IB/ipoib: Add ndo operation for getting VFs GUID attributes
> >   IB/mlx5: Implement callbacks for getting VFs GUID attributes
>
> Dave,
>
> I see that you marked these patches as "not applicable" in patchworks.
>
> Can I assume that you are OK with them and we can take them through RDMA
> tree? If yes, can you give your Ack on the first patch?

Kindly reminder.

Thanks

>
> Thanks
Leon Romanovsky Nov. 22, 2019, 4:21 p.m. UTC | #3
On Thu, Nov 14, 2019 at 03:31:21PM +0200, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@mellanox.com>
>
> Hi,
>
> This series from Danit extends RTNETLINK to provide IB port and node
> GUIDs, which were configured for Infiniband VFs.
>
> The functionality to set VF GUIDs already existed for a long time, and here
> we are adding the missing "get" so that netlink will be symmetric
> and various cloud orchestration tools will be able to manage such
> VFs more naturally.
>
> The iproute2 was extended too to present those GUIDs.
>
> - ip link show <device>
>
> For example:
> - ip link set ib4 vf 0 node_guid 22:44:33:00:33:11:00:33
> - ip link set ib4 vf 0 port_guid 10:21:33:12:00:11:22:10
> - ip link show ib4
>     ib4: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN mode DEFAULT group default qlen 256
>     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
>     vf 0     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff,
>     spoof checking off, NODE_GUID 22:44:33:00:33:11:00:33, PORT_GUID 10:21:33:12:00:11:22:10, link-state disable, trust off, query_rss off
>
> Due to the fact that this series touches both net and RDMA, we assume
> that it needs to be applied to our shared branch (mlx5-next) and pulled
> later by Dave and Doug/Jason.
>
> Thanks
>
> Danit Goldberg (4):
>   net/core: Add support for getting VF GUIDs
>   IB/core: Add interfaces to get VF node and port GUIDs
>   IB/ipoib: Add ndo operation for getting VFs GUID attributes
>   IB/mlx5: Implement callbacks for getting VFs GUID attributes

Applied to mlx5-next,
Doug, Jason please pull.

9c0015ef0928 IB/mlx5: Implement callbacks for getting VFs GUID attributes
2446887ed226 IB/ipoib: Add ndo operation for getting VFs GUID attributes
bfcb3c5d1485 IB/core: Add interfaces to get VF node and port GUIDs
30aad41721e0 net/core: Add support for getting VF GUIDs

Thanks
Jason Gunthorpe Nov. 22, 2019, 8:15 p.m. UTC | #4
On Fri, Nov 22, 2019 at 04:21:07PM +0000, Leon Romanovsky wrote:
> On Thu, Nov 14, 2019 at 03:31:21PM +0200, Leon Romanovsky wrote:
> > From: Leon Romanovsky <leonro@mellanox.com>
> >
> > Hi,
> >
> > This series from Danit extends RTNETLINK to provide IB port and node
> > GUIDs, which were configured for Infiniband VFs.
> >
> > The functionality to set VF GUIDs already existed for a long time, and here
> > we are adding the missing "get" so that netlink will be symmetric
> > and various cloud orchestration tools will be able to manage such
> > VFs more naturally.
> >
> > The iproute2 was extended too to present those GUIDs.
> >
> > - ip link show <device>
> >
> > For example:
> > - ip link set ib4 vf 0 node_guid 22:44:33:00:33:11:00:33
> > - ip link set ib4 vf 0 port_guid 10:21:33:12:00:11:22:10
> > - ip link show ib4
> >     ib4: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN mode DEFAULT group default qlen 256
> >     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
> >     vf 0     link/infiniband 00:00:0a:2d:fe:80:00:00:00:00:00:00:ec:0d:9a:03:00:44:36:8d brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff,
> >     spoof checking off, NODE_GUID 22:44:33:00:33:11:00:33, PORT_GUID 10:21:33:12:00:11:22:10, link-state disable, trust off, query_rss off
> >
> > Due to the fact that this series touches both net and RDMA, we assume
> > that it needs to be applied to our shared branch (mlx5-next) and pulled
> > later by Dave and Doug/Jason.
> >
> > Thanks
> >
> > Danit Goldberg (4):
> >   net/core: Add support for getting VF GUIDs
> >   IB/core: Add interfaces to get VF node and port GUIDs
> >   IB/ipoib: Add ndo operation for getting VFs GUID attributes
> >   IB/mlx5: Implement callbacks for getting VFs GUID attributes
> 
> Applied to mlx5-next,
> Doug, Jason please pull.
> 
> 9c0015ef0928 IB/mlx5: Implement callbacks for getting VFs GUID attributes
> 2446887ed226 IB/ipoib: Add ndo operation for getting VFs GUID attributes
> bfcb3c5d1485 IB/core: Add interfaces to get VF node and port GUIDs
> 30aad41721e0 net/core: Add support for getting VF GUIDs

Okay, done.

Jason