summaryrefslogtreecommitdiffstats
path: root/drivers/base/dma-buf.c
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2012-01-26 12:27:25 +0100
committerSumit Semwal <sumit.semwal@ti.com>2012-03-19 11:12:15 +0100
commit2ed9201bdd9a8e462d768a838fb2bc944c6887a4 (patch)
treeb205a540211ba7461c82c641c0131e39b11818e3 /drivers/base/dma-buf.c
parentdma-buf: Return error instead of using a goto statement when possible (diff)
downloadlinux-2ed9201bdd9a8e462d768a838fb2bc944c6887a4.tar.xz
linux-2ed9201bdd9a8e462d768a838fb2bc944c6887a4.zip
dma-buf: Move code out of mutex-protected section in dma_buf_attach()
Some fields can be set without mutex protection. Initialize them before locking the mutex. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
Diffstat (limited to 'drivers/base/dma-buf.c')
-rw-r--r--drivers/base/dma-buf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/base/dma-buf.c b/drivers/base/dma-buf.c
index 97450a52172c..8afe2dd17912 100644
--- a/drivers/base/dma-buf.c
+++ b/drivers/base/dma-buf.c
@@ -192,10 +192,11 @@ struct dma_buf_attachment *dma_buf_attach(struct dma_buf *dmabuf,
if (attach == NULL)
return ERR_PTR(-ENOMEM);
- mutex_lock(&dmabuf->lock);
-
attach->dev = dev;
attach->dmabuf = dmabuf;
+
+ mutex_lock(&dmabuf->lock);
+
if (dmabuf->ops->attach) {
ret = dmabuf->ops->attach(dmabuf, dev, attach);
if (ret)