2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-25 13:43:55 +08:00
linux-next/include/uapi/rdma
Yishai Hadas 7c043e908a IB/mlx5: Add support for DEVX query UAR
Return a device UAR index for a given user index via the DEVX interface.

Security note:
The hardware protection mechanism works like this: Each device object that
is subject to UAR doorbells (QP/SQ/CQ) gets a UAR ID (called uar_page in
the device specification manual) upon its creation. Then upon doorbell,
hardware fetches the object context for which the doorbell was rang, and
validates that the UAR through which the DB was rang matches the UAR ID
of the object.

If no match the doorbell is silently ignored by the hardware.  Of
course, the user cannot ring a doorbell on a UAR that was not mapped to
it.

Now in devx, as the devx kernel does not manipulate the QP/SQ/CQ command
mailboxes (except tagging them with UID), we expose to the user its UAR
ID, so it can embed it in these objects in the expected specification
format. So the only thing the user can do is hurt itself by creating a
QP/SQ/CQ with a UAR ID other than his, and then in this case other users
may ring a doorbell on its objects.

The consequence of that will be that another user can schedule a QP/SQ
of the buggy user for execution (just insert it to the hardware schedule
queue or arm its CQ for event generation), no further harm is expected.

Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2018-06-19 10:53:02 -06:00
..
hfi RDMA: Change all uapi headers to use __aligned_u64 instead of __u64 2018-03-27 14:25:09 -06:00
bnxt_re-abi.h RDMA: Change all uapi headers to use __aligned_u64 instead of __u64 2018-03-27 14:25:09 -06:00
cxgb3-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
cxgb4-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
hns-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
i40iw-abi.h RDMA: Change all uapi headers to use __aligned_u64 instead of __u64 2018-03-27 14:25:09 -06:00
ib_user_cm.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ib_user_ioctl_cmds.h IB/uverbs: Add read counters support 2018-06-02 07:33:55 +03:00
ib_user_ioctl_verbs.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ib_user_mad.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ib_user_sa.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ib_user_verbs.h Verbs flow counters support 2018-06-04 08:48:11 -06:00
mlx4-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
mlx5_user_ioctl_cmds.h IB/mlx5: Add support for DEVX query UAR 2018-06-19 10:53:02 -06:00
mlx5_user_ioctl_verbs.h IB/mlx5: Add implementation for create and destroy action_xfrm 2018-04-04 12:06:26 -06:00
mlx5-abi.h IB/mlx5: Introduce DEVX 2018-06-19 10:53:02 -06:00
mthca-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
nes-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ocrdma-abi.h RDMA: Change all uapi headers to use __aligned_u64 instead of __u64 2018-03-27 14:25:09 -06:00
qedr-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
rdma_netlink.h RDMA/uapi: Fix uapi breakage 2018-05-15 15:54:46 -04:00
rdma_user_cm.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
rdma_user_ioctl_cmds.h IB/uverbs: Add enum attribute type to ioctl() interface 2018-04-04 12:06:24 -06:00
rdma_user_ioctl.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
rdma_user_rxe.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
vmw_pvrdma-abi.h RDMA: Change all uapi headers to use __aligned_u64 instead of __u64 2018-03-27 14:25:09 -06:00