On Sun, Apr 18, 2021 at 01:59:21PM +0300, Leon Romanovsky wrote: > From: Mark Bloch <mbloch@xxxxxxxxxx> > > Expose a non standard query port via IOCTL that will be used to expose > port attributes that are specific to mlx5 devices. > > The new interface receives a port number to query and returns a > structure that contains the available attributes for that port. > This will be used to fill the gap between pure DEVX use cases > and use cases where a kernel needs to inform userspace about > various kernel driver configurations that userspace must use > in order to work correctly. > > Flags is used to indicate which fields are valid on return. > > MLX5_IB_UAPI_QUERY_PORT_VPORT: > The vport number of the queered port. > > MLX5_IB_UAPI_QUERY_PORT_VPORT_VHCA_ID: > The VHCA ID of the vport of the queered port. > > MLX5_IB_UAPI_QUERY_PORT_VPORT_STEERING_ICM_RX: > The vport's RX ICM address used for sw steering. > > MLX5_IB_UAPI_QUERY_PORT_VPORT_STEERING_ICM_TX: > The vport's TX ICM address used for sw steering. > > MLX5_IB_UAPI_QUERY_PORT_VPORT_REG_C0: > The metadata used to tag egress packets of the vport. > > MLX5_IB_UAPI_QUERY_PORT_ESW_OWNER_VHCA_ID: > The E-Switch owner vhca id of the vport. > > Reviewed-by: Maor Gottlieb <maorg@xxxxxxxxxx> > Signed-off-by: Mark Bloch <mbloch@xxxxxxxxxx> > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxx> > --- > Changelog: > v3: > * declared "info" variable on stack > v2: https://lore.kernel.org/linux-api/20210401085004.577338-1-leon@xxxxxxxxxx > * Changed __u64 to be __aligned_u64 in the uapi header > v1: https://lore.kernel.org/linux-api/20210322093932.398466-1-leon@xxxxxxxxxx > * Missed sw_owner check for CX-6 device, fixed it. > v0: https://lore.kernel.org/linux-api/20210318135221.681014-1-leon@xxxxxxxxxx > --- > drivers/infiniband/hw/mlx5/std_types.c | 173 ++++++++++++++++++++++ > include/uapi/rdma/mlx5_user_ioctl_cmds.h | 9 ++ > include/uapi/rdma/mlx5_user_ioctl_verbs.h | 25 ++++ > 3 files changed, 207 insertions(+) Applied to for-next, thanks Jason