From d4a85c309b33f93cb211f2fa9d26fa77d0bb7b5e Mon Sep 17 00:00:00 2001 From: Steve Wise Date: Tue, 3 May 2016 18:01:08 +0200 Subject: [PATCH] IB/core: add a need_inval flag to struct ib_mr This is the first step toward moving MR invalidation decisions to the core. It will be needed by the upcoming RW API. Signed-off-by: Steve Wise Reviewed-by: Bart Van Assche Reviewed-by: Sagi Grimberg Reviewed-by: Christoph Hellwig Signed-off-by: Doug Ledford --- drivers/infiniband/core/verbs.c | 2 ++ include/rdma/ib_verbs.h | 1 + 2 files changed, 3 insertions(+) diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c index 8549345c6169..76c9c3faac20 100644 --- a/drivers/infiniband/core/verbs.c +++ b/drivers/infiniband/core/verbs.c @@ -1353,6 +1353,7 @@ struct ib_mr *ib_get_dma_mr(struct ib_pd *pd, int mr_access_flags) mr->pd = pd; mr->uobject = NULL; atomic_inc(&pd->usecnt); + mr->need_inval = false; } return mr; @@ -1399,6 +1400,7 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd, mr->pd = pd; mr->uobject = NULL; atomic_inc(&pd->usecnt); + mr->need_inval = false; } return mr; diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 400a8a0422a4..3f66647749ca 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -1446,6 +1446,7 @@ struct ib_mr { u64 iova; u32 length; unsigned int page_size; + bool need_inval; union { struct ib_uobject *uobject; /* user */ struct list_head qp_entry; /* FR */ -- 2.20.1