aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/rdma/ib_user_ioctl_verbs.h
diff options
context:
space:
mode:
authorMoni Shoua <monis@mellanox.com>2018-12-11 13:37:52 +0200
committerJason Gunthorpe <jgg@mellanox.com>2018-12-18 15:19:46 -0700
commitad8a4496757f6f7344011a20a07195bd27e3989c (patch)
tree398c3f6da4ba9337c5993d00f30402cfcf5caec3 /include/uapi/rdma/ib_user_ioctl_verbs.h
parentIB/uverbs: Add helper to get array size from ptr attribute (diff)
downloadlinux-dev-ad8a4496757f6f7344011a20a07195bd27e3989c.tar.xz
linux-dev-ad8a4496757f6f7344011a20a07195bd27e3989c.zip
IB/uverbs: Add support to advise_mr
Add new ioctl method for the MR object - ADVISE_MR. This command can be used by users to give an advice or directions to the kernel about an address range that belongs to memory regions. A new ib_device callback, advise_mr(), is introduced here to suupport the new command. This command takes the following arguments: - pd: The protection domain to which all memory regions belong - advice: The type of the advice * IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH - Pre-fetch a range of an on-demand paging MR * IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH_WRITE - Pre-fetch a range of an on-demand paging MR with write intention - flags: The properties of the advice * IB_UVERBS_ADVISE_MR_FLAG_FLUSH - Operation must end before return to the caller - sg_list: The list of memory ranges - num_sge: The number of memory ranges in the list - attrs: More attributes to be parsed by the provider Signed-off-by: Moni Shoua <monis@mellanox.com> Reviewed-by: Guy Levi <guyle@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to '')
-rw-r--r--include/uapi/rdma/ib_user_ioctl_verbs.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/uapi/rdma/ib_user_ioctl_verbs.h b/include/uapi/rdma/ib_user_ioctl_verbs.h
index 6cdf192070a2..9dcd345b852a 100644
--- a/include/uapi/rdma/ib_user_ioctl_verbs.h
+++ b/include/uapi/rdma/ib_user_ioctl_verbs.h
@@ -157,4 +157,13 @@ enum ib_uverbs_read_counters_flags {
IB_UVERBS_READ_COUNTERS_PREFER_CACHED = 1 << 0,
};
+enum ib_uverbs_advise_mr_advice {
+ IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH,
+ IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH_WRITE,
+};
+
+enum ib_uverbs_advise_mr_flag {
+ IB_UVERBS_ADVISE_MR_FLAG_FLUSH = 1 << 0,
+};
+
#endif