From: Steve Wise Date: Tue, 3 May 2016 16:01:08 +0000 (+0200) Subject: IB/core: add a need_inval flag to struct ib_mr X-Git-Tag: v4.7~232^2~26 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d4a85c309b33f93cb211f2fa9d26fa77d0bb7b5e;p=platform%2Fkernel%2Flinux-amlogic.git 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 --- diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c index 8549345..76c9c3f 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 400a8a0..3f66647 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 */