From: Jason Gunthorpe <jgg@xxxxxxxxxxxx> This series is a mixed bag of revisions to the uobjects system intended to make the locking and ref counting simpler and more regular. This is preparation for a followup series that revises the destroy processing. The major change is to alter how disassociate locks and interacts ith the rest of the code. It relies on simpler locking and stronger semantics that are mostly concentrated into the rdma_core.c functions working with the ufile and uobject. There should be no change in behavior from this series. The followup series can be previewed here: https://github.com/jgunthorpe/linux/commits/uverbs_disassociate Jason Gunthorpe (11): IB/uverbs: Get rid of null_obj_type IB/uverbs: Handle IDR and FD types without truncation IB/uverbs: Clarify the kref'ing ordering for alloc_commit IB/uverbs: Revise the placement of get/puts on uobject IB/uverbs: Clarify and revise uverbs_close_fd IB/uverbs: Revise and clarify the rwsem and uobjects_lock IB/uverbs: Rework the locking for cleaning up the ucontext IB/uverbs: Always propagate errors from rdma_alloc_commit_uobject() IB/uverbs: Move the FD uobj type struct file allocation to alloc_commit IB/mlx5: Use the ucontext from the uobj, not the file IB/uverbs: Fix locking around struct ib_uverbs_file ucontext drivers/infiniband/core/rdma_core.c | 418 ++++++++++++------ drivers/infiniband/core/rdma_core.h | 5 +- drivers/infiniband/core/uverbs.h | 22 +- drivers/infiniband/core/uverbs_cmd.c | 77 ++-- drivers/infiniband/core/uverbs_ioctl.c | 19 +- drivers/infiniband/core/uverbs_main.c | 140 ++---- drivers/infiniband/core/uverbs_std_types_cq.c | 2 +- drivers/infiniband/core/uverbs_std_types_dm.c | 2 +- drivers/infiniband/hw/mlx5/devx.c | 52 ++- include/rdma/ib_verbs.h | 5 + include/rdma/uverbs_ioctl.h | 8 - include/rdma/uverbs_std_types.h | 47 +- include/rdma/uverbs_types.h | 8 +- include/uapi/rdma/rdma_user_ioctl_cmds.h | 7 +- 14 files changed, 450 insertions(+), 362 deletions(-) -- 2.18.0 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html