mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 16:44:58 +02:00
drm/vmwgfx: Merge vmw_bo_release and vmw_bo_free functions
Some of the warnings need to be reordered between these two functions
in order to be correct. This has happened multiple times.
Merging them solves this problem once and for all.
Fixes: d6667f0ddf ("drm/vmwgfx: Fix handling of dumb buffers")
Signed-off-by: Ian Forbes <ian.forbes@broadcom.com>
Signed-off-by: Zack Rusin <zack.rusin@broadcom.com>
Link: https://patch.msgid.link/20260107152059.3048329-1-ian.forbes@broadcom.com
This commit is contained in:
parent
d9186faeae
commit
37a0cff455
|
|
@ -32,9 +32,15 @@
|
|||
|
||||
#include <drm/ttm/ttm_placement.h>
|
||||
|
||||
static void vmw_bo_release(struct vmw_bo *vbo)
|
||||
/**
|
||||
* vmw_bo_free - vmw_bo destructor
|
||||
*
|
||||
* @bo: Pointer to the embedded struct ttm_buffer_object
|
||||
*/
|
||||
static void vmw_bo_free(struct ttm_buffer_object *bo)
|
||||
{
|
||||
struct vmw_resource *res;
|
||||
struct vmw_bo *vbo = to_vmw_bo(&bo->base);
|
||||
|
||||
WARN_ON(kref_read(&vbo->tbo.base.refcount) != 0);
|
||||
vmw_bo_unmap(vbo);
|
||||
|
|
@ -62,20 +68,8 @@ static void vmw_bo_release(struct vmw_bo *vbo)
|
|||
}
|
||||
vmw_surface_unreference(&vbo->dumb_surface);
|
||||
}
|
||||
drm_gem_object_release(&vbo->tbo.base);
|
||||
}
|
||||
|
||||
/**
|
||||
* vmw_bo_free - vmw_bo destructor
|
||||
*
|
||||
* @bo: Pointer to the embedded struct ttm_buffer_object
|
||||
*/
|
||||
static void vmw_bo_free(struct ttm_buffer_object *bo)
|
||||
{
|
||||
struct vmw_bo *vbo = to_vmw_bo(&bo->base);
|
||||
|
||||
WARN_ON(!RB_EMPTY_ROOT(&vbo->res_tree));
|
||||
vmw_bo_release(vbo);
|
||||
drm_gem_object_release(&vbo->tbo.base);
|
||||
WARN_ON(vbo->dirty);
|
||||
kfree(vbo);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user