IB/uverbs: Add alloc/free dm uverbs ioctl support
authorAriel Levkovich <lariel@mellanox.com>
Thu, 5 Apr 2018 15:53:24 +0000 (18:53 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Thu, 5 Apr 2018 17:16:39 +0000 (11:16 -0600)
commitbee76d7ab5d270919e80e4764df7cd7e4f06ed24
treed8ba6c8ddbc8aa781427f4c0081e8d05b47fb2d9
parent1d8eeb9f6a6e0d8ac43a54fd95126044bf8d6695
IB/uverbs: Add alloc/free dm uverbs ioctl support

This change adds uverbs support for allocation/freeing
of device memory commands.

A new uverbs object is defined of type idr to represent
and track the new resource type allocation per context.

The API requires provider driver to implement 2 new ib_device
callbacks - one for allocation and one for deallocation which
return and accept (respectively) the ib_dm object which represents
the allocated memory on the device.

The support is added via the ioctl command infrastructure
only.

Signed-off-by: Ariel Levkovich <lariel@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/core/Makefile
drivers/infiniband/core/uverbs.h
drivers/infiniband/core/uverbs_std_types.c
drivers/infiniband/core/uverbs_std_types_dm.c [new file with mode: 0644]
include/rdma/ib_verbs.h
include/uapi/rdma/ib_user_ioctl_cmds.h