linux_dsm_epyc7002/drivers/infiniband/hw/mlx4
Jack Morgenstein 99ec41d0a4 mlx4: Add infrastructure for selecting VFs to enable QP0 via MLX proxy QPs
This commit adds the infrastructure for enabling selected VFs to
operate SMI (QP0) MADs without restriction.

Additionally, for these enabled VFs, their QP0 proxy and tunnel QPs
are MLX QPs.  As such, they operate over VL15.  Therefore, they are
not affected by "credit" problems or changes in the VLArb table (which
may shut down VL0).

Non-enabled VFs may only create UD proxy QP0 qps (which are forced by
the hypervisor to send packets using the q-key it assigns and places
in the qp-context).  Thus, non-enabled VFs will not pose a security
risk.  The hypervisor discards any privileged MADs it receives from
these non-enabled VFs.

By default, all VFs are NOT enabled, and must explicitly be enabled
by the administrator.

The sysfs interface which operates the VF enablement infrastructure
is provided in the next commit.

Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
2014-05-29 21:13:09 -07:00
..
ah.c IB/mlx4: fix unitialised variable is_mcast 2014-05-28 10:00:06 -07:00
alias_GUID.c mlx4: Use actual number of PCI functions (PF + VFs) for alias GUID logic 2014-03-25 20:48:05 -04:00
cm.c mlx4_ib: Fix SIDR support of for UD QPs under SRIOV/RoCE 2014-03-12 15:57:16 -04:00
cq.c mlx4: Implement IP based gids support for RoCE/SRIOV 2014-03-12 15:57:16 -04:00
doorbell.c IB: Refactor umem to use linear SG table 2014-03-04 10:34:28 -08:00
Kconfig IB/mlx4: Add dependency INET 2014-01-19 15:14:05 -08:00
mad.c IB/mlx4: Preparation for VFs to issue/receive SMI (QP0) requests/responses 2014-05-29 21:12:58 -07:00
main.c IB/mlx4: SET_PORT called by mlx4_ib_modify_port should be wrapped 2014-05-29 21:12:58 -07:00
Makefile IB/mlx4: Add iov directory in sysfs under the ib device 2012-09-30 20:33:39 -07:00
mcg.c mlx4: Implement IP based gids support for RoCE/SRIOV 2014-03-12 15:57:16 -04:00
mlx4_ib.h mlx4: Implement IP based gids support for RoCE/SRIOV 2014-03-12 15:57:16 -04:00
mr.c IB: Refactor umem to use linear SG table 2014-03-04 10:34:28 -08:00
qp.c mlx4: Add infrastructure for selecting VFs to enable QP0 via MLX proxy QPs 2014-05-29 21:13:09 -07:00
srq.c IB/mlx4: Replace printk(KERN_yyy...) with pr_yyy(...) 2012-05-08 11:59:36 -07:00
sysfs.c net/mlx4: Adapt code for N-Port VF 2014-03-20 16:18:30 -04:00
user.h mlx4: 64-byte CQE/EQE support 2012-11-26 10:19:17 -08:00