From: Leon Romanovsky <leonro@xxxxxxxxxxxx> Changelog: v1: * v0 revealed old bug https://lore.kernel.org/linux-rdma/20200716102059.1420681-1-leon@xxxxxxxxxx that took a while to find. * create_cq() was rewritten to make sure that uobj is properly initialized. v0: https://lore.kernel.org/lkml/20200708110554.1270613-1-leon@xxxxxxxxxx ---------------------------------------------------- Hi, The discussion about RWQ table patch revealed incosistency with use of usecnt, complex unwind flows without any reason and difference between write() and ioctl() paths. This series extends infrastructure to be consistent, reliable and predicable in regards of commit/desotry uobject. Thanks Leon Romanovsky (2): RDMA/core: Align abort/commit object scheme for write() and ioctl() paths RDMA/core: Update write interface to use automatic object lifetime drivers/infiniband/core/uverbs_cmd.c | 314 ++++++------------ drivers/infiniband/core/uverbs_main.c | 4 + .../infiniband/core/uverbs_std_types_device.c | 7 +- include/rdma/uverbs_ioctl.h | 1 + include/rdma/uverbs_std_types.h | 14 + 5 files changed, 120 insertions(+), 220 deletions(-) -- 2.26.2