drm/vmwgfx: Make vmw_dmabuf_unreference handle NULL objects
authorThomas Hellstrom <thellstrom@vmware.com>
Fri, 9 Nov 2012 12:26:15 +0000 (12:26 +0000)
committerDave Airlie <airlied@redhat.com>
Tue, 20 Nov 2012 06:19:59 +0000 (16:19 +1000)
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>
drivers/gpu/drm/vmwgfx/vmwgfx_drv.h

index 88a179e..7c6f6e3 100644 (file)
@@ -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)