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 <swise@opengridcomputing.com> Reviewed-by: Bart Van Assche <bart.vanassche@sandisk.com> Reviewed-by: Sagi Grimberg <sagi@grimberg.me> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
fffb0383cf
commit
d4a85c309b
@ -1353,6 +1353,7 @@ struct ib_mr *ib_get_dma_mr(struct ib_pd *pd, int mr_access_flags)
|
|||||||
mr->pd = pd;
|
mr->pd = pd;
|
||||||
mr->uobject = NULL;
|
mr->uobject = NULL;
|
||||||
atomic_inc(&pd->usecnt);
|
atomic_inc(&pd->usecnt);
|
||||||
|
mr->need_inval = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return mr;
|
return mr;
|
||||||
@ -1399,6 +1400,7 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
|
|||||||
mr->pd = pd;
|
mr->pd = pd;
|
||||||
mr->uobject = NULL;
|
mr->uobject = NULL;
|
||||||
atomic_inc(&pd->usecnt);
|
atomic_inc(&pd->usecnt);
|
||||||
|
mr->need_inval = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return mr;
|
return mr;
|
||||||
|
@ -1446,6 +1446,7 @@ struct ib_mr {
|
|||||||
u64 iova;
|
u64 iova;
|
||||||
u32 length;
|
u32 length;
|
||||||
unsigned int page_size;
|
unsigned int page_size;
|
||||||
|
bool need_inval;
|
||||||
union {
|
union {
|
||||||
struct ib_uobject *uobject; /* user */
|
struct ib_uobject *uobject; /* user */
|
||||||
struct list_head qp_entry; /* FR */
|
struct list_head qp_entry; /* FR */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user