aboutsummaryrefslogtreecommitdiffstats
path: root/include/rdma/ib_umem_odp.h
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@mellanox.com>2018-09-16 20:48:11 +0300
committerDoug Ledford <dledford@redhat.com>2018-09-21 11:58:36 -0400
commit56ac9dd9177ce451ac8176311915b29e8b5f0ac2 (patch)
tree0eb46c407ac53d9192c6a73a56a6c581e39845b8 /include/rdma/ib_umem_odp.h
parentRDMA/umem: Handle a half-complete start/end sequence (diff)
downloadlinux-dev-56ac9dd9177ce451ac8176311915b29e8b5f0ac2.tar.xz
linux-dev-56ac9dd9177ce451ac8176311915b29e8b5f0ac2.zip
RDMA/umem: Avoid synchronize_srcu in the ODP MR destruction path
synchronize_rcu is slow enough that it should be avoided on the syscall path when user space is destroying MRs. After all the rework we can now trivially do this by having call_srcu kfree the per_mm. 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 '')
-rw-r--r--include/rdma/ib_umem_odp.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/rdma/ib_umem_odp.h b/include/rdma/ib_umem_odp.h
index ec05c82ead7a..0b1446fe2fab 100644
--- a/include/rdma/ib_umem_odp.h
+++ b/include/rdma/ib_umem_odp.h
@@ -99,6 +99,7 @@ struct ib_ucontext_per_mm {
unsigned int odp_mrs_count;
struct list_head ucontext_list;
+ struct rcu_head rcu;
};
int ib_umem_odp_get(struct ib_umem_odp *umem_odp, int access);