Message ID | 20201214171622.3868883-1-daniel.vetter@ffwll.ch |
---|---|
State | Accepted |
Commit | 8ccf0a29af75326fb8e5ed6e51ff61e74b7ed2e4 |
Headers | show |
Series | dma-buf: begin/end_cpu might lock the dma_resv lock | expand |
Am 14.12.20 um 18:16 schrieb Daniel Vetter: > At least amdgpu and i915 do, so lets just document this as the rule. > > v2: Works better with less typos (intel-gfx-ci) > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > Cc: Thomas Zimmermann <tzimmermann@suse.de> > Cc: Sumit Semwal <sumit.semwal@linaro.org> > Cc: "Christian König" <christian.koenig@amd.com> > Cc: linux-media@vger.kernel.org > Cc: linaro-mm-sig@lists.linaro.org Reviewed-by: Christian König <christian.koenig@amd.com> > --- > drivers/dma-buf/dma-buf.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c > index e1fa6c6f02c4..a0a02ef888da 100644 > --- a/drivers/dma-buf/dma-buf.c > +++ b/drivers/dma-buf/dma-buf.c > @@ -1118,6 +1118,8 @@ int dma_buf_begin_cpu_access(struct dma_buf *dmabuf, > if (WARN_ON(!dmabuf)) > return -EINVAL; > > + might_lock(&dmabuf->resv->lock.base); > + > if (dmabuf->ops->begin_cpu_access) > ret = dmabuf->ops->begin_cpu_access(dmabuf, direction); > > @@ -1151,6 +1153,8 @@ int dma_buf_end_cpu_access(struct dma_buf *dmabuf, > > WARN_ON(!dmabuf); > > + might_lock(&dmabuf->resv->lock.base); > + > if (dmabuf->ops->end_cpu_access) > ret = dmabuf->ops->end_cpu_access(dmabuf, direction); >
diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c index e1fa6c6f02c4..a0a02ef888da 100644 --- a/drivers/dma-buf/dma-buf.c +++ b/drivers/dma-buf/dma-buf.c @@ -1118,6 +1118,8 @@ int dma_buf_begin_cpu_access(struct dma_buf *dmabuf, if (WARN_ON(!dmabuf)) return -EINVAL; + might_lock(&dmabuf->resv->lock.base); + if (dmabuf->ops->begin_cpu_access) ret = dmabuf->ops->begin_cpu_access(dmabuf, direction); @@ -1151,6 +1153,8 @@ int dma_buf_end_cpu_access(struct dma_buf *dmabuf, WARN_ON(!dmabuf); + might_lock(&dmabuf->resv->lock.base); + if (dmabuf->ops->end_cpu_access) ret = dmabuf->ops->end_cpu_access(dmabuf, direction);
At least amdgpu and i915 do, so lets just document this as the rule. v2: Works better with less typos (intel-gfx-ci) Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: "Christian König" <christian.koenig@amd.com> Cc: linux-media@vger.kernel.org Cc: linaro-mm-sig@lists.linaro.org --- drivers/dma-buf/dma-buf.c | 4 ++++ 1 file changed, 4 insertions(+)