[PATCH 00/11] IB/uverbs: Revise handling of uobjects

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux