On Sun, Sep 11, 2016 at 09:49:12PM -0700, Adit Ranadive wrote:
We share some common structures with the user-level driver. This patch
adds those structures and shared functions to traverse the QP/CQ rings.
create mode 100644 drivers/infiniband/hw/pvrdma/pvrdma_uapi.h
create mode 100644 drivers/infiniband/hw/pvrdma/pvrdma_user.h
The files that are intended to be shared with userspace must be under
include/uapi/, please coordinate with Leon on the path.
Same for all the new drivers.
quoted hunk ↗ jump to hunk
+static inline __s32 pvrdma_idx(atomic_t *var, __u32 max_elems)
+{
+ const unsigned int idx = atomic_read(var);
Eh? Does this even compile in userspace?
If this is not a userspace header then why does it use __u32 and
related ??
quoted hunk ↗ jump to hunk
+#define PVRDMA_UVERBS_ABI_VERSION 3
+#define PVRDMA_BOARD_ID 1
+#define PVRDMA_REV_ID 1
+
+struct pvrdma_alloc_ucontext_resp {
+ u32 qp_tab_size;
+ u32 reserved;
+};
This certainly looks like a userspace header, shouldn't it use __u32?
NAK
Jason