[PATCH rdma-next V2 0/9] Export vendors specific ABIs

Leon Romanovsky
2016-09-22T14:31:10Z

The consolidate library revealed the fact that vendor specific
structures and defines are copy/pasted between kernel and user-space.

This patch set moves these headers from internal driver directory to common
place and unifies their name to be drivername-abi.h, so it will be easily shared
by numerous libraries supported in https://github.com/linux-rdma/rdma-core.git.

The drivers which were NOT handled in this patch set are hfi, qib, rxe, usnic and i40iw.

Available in the "topic/uapi-abi" topic branch of this git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/leon/linux-rdma.git

Or for browsing:
https://git.kernel.org/cgit/linux/kernel/git/leon/linux-rdma.git/log/?h=topic/uapi-abi

Thanks

Cc: Christoph Hellwig <hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
Cc: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
Cc: Laurence Oberman <loberman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>

Changelog v1->v2:
* Added Steve's ROB tags for cxgb3/cxgb4
* Added mthca driver to the list of exposed drivers

Leon Romanovsky (9):
IB/mlx5: Move and decouple user vendor structures
IB/cxgb3: Move user vendor structures
IB/cxgb4: Move user vendor structures
IB/mlx4: Move user vendor structures
IB/ocrdma: Move user vendor structures
IB/nes: Move user vendor structures
IB/mthca: Move user vendor structures
IB/core: Export vendor specific structures
MAINTAINERS: Update RDMA vendor specific UAPI files

MAINTAINERS | 6 +
drivers/infiniband/hw/cxgb3/iwch.c | 2 +-
drivers/infiniband/hw/cxgb3/iwch_provider.c | 2 +-
drivers/infiniband/hw/cxgb3/iwch_user.h | 74 -------
drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 2 +-
drivers/infiniband/hw/cxgb4/user.h | 80 --------
drivers/infiniband/hw/mlx4/cq.c | 2 +-
drivers/infiniband/hw/mlx4/main.c | 2 +-
drivers/infiniband/hw/mlx4/qp.c | 2 +-
drivers/infiniband/hw/mlx4/srq.c | 2 +-
drivers/infiniband/hw/mlx4/user.h | 107 ----------
drivers/infiniband/hw/mlx5/cq.c | 1 -
drivers/infiniband/hw/mlx5/main.c | 1 -
drivers/infiniband/hw/mlx5/mlx5_ib.h | 37 ++++
drivers/infiniband/hw/mlx5/mr.c | 1 -
drivers/infiniband/hw/mlx5/qp.c | 1 -
drivers/infiniband/hw/mlx5/srq.c | 1 -
drivers/infiniband/hw/mlx5/user.h | 281 ---------------------------
drivers/infiniband/hw/mthca/mthca_provider.c | 2 +-
drivers/infiniband/hw/nes/nes.h | 2 +-
drivers/infiniband/hw/nes/nes_user.h | 114 -----------
drivers/infiniband/hw/ocrdma/ocrdma_abi.h | 149 --------------
drivers/infiniband/hw/ocrdma/ocrdma_main.c | 2 +-
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 2 +-
include/uapi/rdma/Kbuild | 7 +
include/uapi/rdma/cxgb3-abi.h | 76 ++++++++
include/uapi/rdma/cxgb4-abi.h | 81 ++++++++
include/uapi/rdma/mlx4-abi.h | 107 ++++++++++
include/uapi/rdma/mlx5-abi.h | 242 +++++++++++++++++++++++
include/uapi/rdma/mthca-abi.h | 111 +++++++++++
include/uapi/rdma/nes-abi.h | 114 +++++++++++
include/uapi/rdma/ocrdma-abi.h | 151 ++++++++++++++
32 files changed, 943 insertions(+), 821 deletions(-)
delete mode 100644 drivers/infiniband/hw/cxgb3/iwch_user.h
delete mode 100644 drivers/infiniband/hw/cxgb4/user.h
delete mode 100644 drivers/infiniband/hw/mlx4/user.h
delete mode 100644 drivers/infiniband/hw/mlx5/user.h
delete mode 100644 drivers/infiniband/hw/nes/nes_user.h
delete mode 100644 drivers/infiniband/hw/ocrdma/ocrdma_abi.h
create mode 100644 include/uapi/rdma/cxgb3-abi.h
create mode 100644 include/uapi/rdma/cxgb4-abi.h
create mode 100644 include/uapi/rdma/mlx4-abi.h
create mode 100644 include/uapi/rdma/mlx5-abi.h
create mode 100644 include/uapi/rdma/mthca-abi.h
create mode 100644 include/uapi/rdma/nes-abi.h
create mode 100644 include/uapi/rdma/ocrdma-abi.h