mbox series

[rdma-core,00/10] Command execution rework

Message ID 20181122232416.30132-1-jgg@ziepe.ca (mailing list archive)
Headers show
Series Command execution rework | expand

Message

Jason Gunthorpe Nov. 22, 2018, 11:24 p.m. UTC
From: Jason Gunthorpe <jgg@mellanox.com>

This series reworks all the places that execute commands to use a consistent
set of helpers around write(). The helpers are designed to accept the location
of all 5 buffers (hdr, cmd, drv_cmd, resp, drv_resp) involved with a command.

This cleanup removes a bunch of duplicated code and paves the way to add more
options for delivering commands to the kernel.

It is the same theme as the new uverbs kernel series currently on the list.

This is PR on github:

https://github.com/linux-rdma/rdma-core/pull/434

Jason Gunthorpe (10):
  verbs: Fix wrong command structure usage
  verbs: Add explicit arguments to DECLARE_CMD_BUFFER_COMPAT()
  verbs: Move ibv_create_comp_channel to use execute_write
  verbs: Consolidate duplicate code in create_rwq_ind_table
  verbs: Replace IBV_INIT_CMD_RESP() with execute_cmd_write
  verbs: Replace IBV_INIT_CMD() with execute_cmd_write_resp
  verbs: Replace IBV_INIT_CMD_RESP_EX*() with execute_cmd_write_ex
  verbs: Replace execute_write with execute_cmd_write/_req
  verbs: Replace execute_write_ex with execute_cmd_ex/_resp
  verbs: use the execute_cmd_write/_ex path for the ioctl fallback

 CMakeLists.txt             |   3 +-
 debian/control             |   2 +-
 debian/libibverbs1.symbols |   2 +-
 libibverbs/cmd.c           | 547 ++++++++++++++++---------------------
 libibverbs/cmd_cq.c        |  24 +-
 libibverbs/cmd_fallback.c  |  77 +++---
 libibverbs/cmd_ioctl.c     |   1 +
 libibverbs/cmd_write.h     | 204 ++++++++------
 libibverbs/driver.h        |  17 +-
 libibverbs/ibverbs.h       |  49 ----
 libibverbs/kern-abi.h      |   6 +-
 libibverbs/verbs.c         |  12 +-
 providers/mlx4/verbs.c     |  49 +---
 providers/mlx5/verbs.c     |  72 ++---
 14 files changed, 458 insertions(+), 607 deletions(-)