Commit 50d46335 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Doug Ledford

IB/core: rename pd->local_mr to pd->__internal_mr

This has two reasons: a) to clearly mark that drivers don't have any
business using it, and b) because we're going to use it for the
(dangerous) global rkey soon, so that drivers don't create on themselves.
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
Reviewed-by: default avatarJason Gunthorpe <jgunthorpe@obsidianresearch.com>
Reviewed-by: default avatarSteve Wise <swise@opengridcomputing.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent 64278fe8
...@@ -571,7 +571,7 @@ ssize_t ib_uverbs_alloc_pd(struct ib_uverbs_file *file, ...@@ -571,7 +571,7 @@ ssize_t ib_uverbs_alloc_pd(struct ib_uverbs_file *file,
pd->device = ib_dev; pd->device = ib_dev;
pd->uobject = uobj; pd->uobject = uobj;
pd->local_mr = NULL; pd->__internal_mr = NULL;
atomic_set(&pd->usecnt, 0); atomic_set(&pd->usecnt, 0);
uobj->object = pd; uobj->object = pd;
......
...@@ -237,7 +237,7 @@ struct ib_pd *ib_alloc_pd(struct ib_device *device) ...@@ -237,7 +237,7 @@ struct ib_pd *ib_alloc_pd(struct ib_device *device)
pd->device = device; pd->device = device;
pd->uobject = NULL; pd->uobject = NULL;
pd->local_mr = NULL; pd->__internal_mr = NULL;
atomic_set(&pd->usecnt, 0); atomic_set(&pd->usecnt, 0);
if (device->attrs.device_cap_flags & IB_DEVICE_LOCAL_DMA_LKEY) if (device->attrs.device_cap_flags & IB_DEVICE_LOCAL_DMA_LKEY)
...@@ -251,8 +251,8 @@ struct ib_pd *ib_alloc_pd(struct ib_device *device) ...@@ -251,8 +251,8 @@ struct ib_pd *ib_alloc_pd(struct ib_device *device)
return (struct ib_pd *)mr; return (struct ib_pd *)mr;
} }
pd->local_mr = mr; pd->__internal_mr = mr;
pd->local_dma_lkey = pd->local_mr->lkey; pd->local_dma_lkey = pd->__internal_mr->lkey;
} }
return pd; return pd;
} }
...@@ -270,10 +270,10 @@ void ib_dealloc_pd(struct ib_pd *pd) ...@@ -270,10 +270,10 @@ void ib_dealloc_pd(struct ib_pd *pd)
{ {
int ret; int ret;
if (pd->local_mr) { if (pd->__internal_mr) {
ret = ib_dereg_mr(pd->local_mr); ret = ib_dereg_mr(pd->__internal_mr);
WARN_ON(ret); WARN_ON(ret);
pd->local_mr = NULL; pd->__internal_mr = NULL;
} }
/* uverbs manipulates usecnt with proper locking, while the kabi /* uverbs manipulates usecnt with proper locking, while the kabi
......
...@@ -1373,7 +1373,11 @@ struct ib_pd { ...@@ -1373,7 +1373,11 @@ struct ib_pd {
struct ib_device *device; struct ib_device *device;
struct ib_uobject *uobject; struct ib_uobject *uobject;
atomic_t usecnt; /* count all resources */ atomic_t usecnt; /* count all resources */
struct ib_mr *local_mr;
/*
* Implementation details of the RDMA core, don't use in drivers:
*/
struct ib_mr *__internal_mr;
}; };
struct ib_xrcd { struct ib_xrcd {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment