/usr/include/rdma
NameSizeModeActions
hfi/-0755rm
bnxt_re-abi.h35140644editdlrm
cxgb4-abi.h31220644editdlrm
efa-abi.h29610644editdlrm
hns-abi.h22070644editdlrm
ib_user_ioctl_cmds.h94300644editdlrm
ib_user_ioctl_verbs.h78820644editdlrm
ib_user_mad.h85300644editdlrm
ib_user_sa.h23050644editdlrm
ib_user_verbs.h289650644editdlrm
irdma-abi.h21920644editdlrm
mana-abi.h11850644editdlrm
mlx4-abi.h51170644editdlrm
mlx5-abi.h138690644editdlrm
mlx5_user_ioctl_cmds.h107450644editdlrm
mlx5_user_ioctl_verbs.h35830644editdlrm
mthca-abi.h30550644editdlrm
ocrdma-abi.h41160644editdlrm
qedr-abi.h43070644editdlrm
rdma_netlink.h149870644editdlrm
rdma_user_cm.h71320644editdlrm
rdma_user_ioctl.h37510644editdlrm
rdma_user_ioctl_cmds.h26070644editdlrm
rdma_user_rxe.h47790644editdlrm
rvt-abi.h17450644editdlrm
siw-abi.h34040644editdlrm
vmw_pvrdma-abi.h80110644editdlrm
Edit: /usr/include/rdma/rvt-abi.h (1745B)
/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ /* * This file contains defines, structures, etc. that are used * to communicate between kernel and user code. */ #ifndef RVT_ABI_USER_H #define RVT_ABI_USER_H #include #include #ifndef RDMA_ATOMIC_UAPI #define RDMA_ATOMIC_UAPI(_type, _name) struct{ _type val; } _name #endif struct rvt_wqe_sge { __aligned_u64 addr; __u32 length; __u32 lkey; }; /* * This structure is used to contain the head pointer, tail pointer, * and completion queue entries as a single memory allocation so * it can be mmap'ed into user space. */ struct rvt_cq_wc { /* index of next entry to fill */ RDMA_ATOMIC_UAPI(__u32, head); /* index of next ib_poll_cq() entry */ RDMA_ATOMIC_UAPI(__u32, tail); /* these are actually size ibcq.cqe + 1 */ struct ib_uverbs_wc uqueue[]; }; /* * Receive work request queue entry. * The size of the sg_list is determined when the QP (or SRQ) is created * and stored in qp->r_rq.max_sge (or srq->rq.max_sge). */ struct rvt_rwqe { __u64 wr_id; __u8 num_sge; __u8 padding[7]; struct rvt_wqe_sge sg_list[]; }; /* * This structure is used to contain the head pointer, tail pointer, * and receive work queue entries as a single memory allocation so * it can be mmap'ed into user space. * Note that the wq array elements are variable size so you can't * just index into the array to get the N'th element; * use get_rwqe_ptr() for user space and rvt_get_rwqe_ptr() * for kernel space. */ struct rvt_rwq { /* new work requests posted to the head */ RDMA_ATOMIC_UAPI(__u32, head); /* receives pull requests from here. */ RDMA_ATOMIC_UAPI(__u32, tail); struct rvt_rwqe wq[]; }; #endif /* RVT_ABI_USER_H */