diff options
| author | Jason Gunthorpe <jgg@mellanox.com> | 2018-11-30 13:06:21 +0200 |
|---|---|---|
| committer | Doug Ledford <dledford@redhat.com> | 2018-12-18 14:12:48 -0500 |
| commit | 4785860e04bc8d7e244b25257168e1cf8a5529ab (patch) | |
| tree | a8f6df83239aaa552a69a1f080c6649961aa088f /drivers/infiniband/core/rdma_core.h | |
| parent | 241414967fb92fdd6f4da27df74b9c9eb11d05f7 (diff) | |
| download | linux-4785860e04bc8d7e244b25257168e1cf8a5529ab.tar.gz linux-4785860e04bc8d7e244b25257168e1cf8a5529ab.tar.bz2 linux-4785860e04bc8d7e244b25257168e1cf8a5529ab.zip | |
RDMA/uverbs: Implement an ioctl that can call write and write_ex handlers
Now that the handlers do not process their own udata we can make a
sensible ioctl that wrappers them. The ioctl follows the same format as
the write_ex() and has the user explicitly specify the core and driver
in/out opaque structures and a command number.
This works for all forms of write commands.
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/core/rdma_core.h')
| -rw-r--r-- | drivers/infiniband/core/rdma_core.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/infiniband/core/rdma_core.h b/drivers/infiniband/core/rdma_core.h index b3ca7457ac42..be6b8e1257d0 100644 --- a/drivers/infiniband/core/rdma_core.h +++ b/drivers/infiniband/core/rdma_core.h @@ -188,6 +188,7 @@ void uverbs_user_mmap_disassociate(struct ib_uverbs_file *ufile); extern const struct uapi_definition uverbs_def_obj_counters[]; extern const struct uapi_definition uverbs_def_obj_cq[]; +extern const struct uapi_definition uverbs_def_obj_device[]; extern const struct uapi_definition uverbs_def_obj_dm[]; extern const struct uapi_definition uverbs_def_obj_flow_action[]; extern const struct uapi_definition uverbs_def_obj_intf[]; @@ -214,4 +215,8 @@ uapi_get_method(const struct uverbs_api *uapi, u32 command) return uapi->write_methods[cmd_idx]; } +void uverbs_fill_udata(struct uverbs_attr_bundle *bundle, + struct ib_udata *udata, unsigned int attr_in, + unsigned int attr_out); + #endif /* RDMA_CORE_H */ |
