diff options
author | Thomas Hellstrom <thellstrom@vmware.com> | 2012-11-09 12:26:15 (GMT) |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-11-20 06:19:59 (GMT) |
commit | bf6f036848ab2151c2498f11cb7d31a52a95dd5c (patch) | |
tree | b41fb38e2c78e4ad29f003f32ddfa2ad67268b71 /drivers/gpu/drm/vmwgfx | |
parent | 506ff75c92a44d80da96bc18d9902d29e8236fc6 (diff) | |
download | linux-fsl-qoriq-bf6f036848ab2151c2498f11cb7d31a52a95dd5c.tar.xz |
drm/vmwgfx: Make vmw_dmabuf_unreference handle NULL objects
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dmitry Torokhov <dtor@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/vmwgfx')
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h index 88a179e..7c6f6e3 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h @@ -699,10 +699,13 @@ static inline struct vmw_surface *vmw_surface_reference(struct vmw_surface *srf) static inline void vmw_dmabuf_unreference(struct vmw_dma_buffer **buf) { struct vmw_dma_buffer *tmp_buf = *buf; - struct ttm_buffer_object *bo = &tmp_buf->base; + *buf = NULL; + if (tmp_buf != NULL) { + struct ttm_buffer_object *bo = &tmp_buf->base; - ttm_bo_unref(&bo); + ttm_bo_unref(&bo); + } } static inline struct vmw_dma_buffer *vmw_dmabuf_reference(struct vmw_dma_buffer *buf) |