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

From: Leon Romanovsky <[email-masked]>
Date: Thu, 14 Nov 2019 15:31:21 +0200

From: Leon Romanovsky <[email-masked]>

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