diff options
author | Tilman Sauerbeck <[email protected]> | 2010-10-23 19:05:26 +0200 |
---|---|---|
committer | Tilman Sauerbeck <[email protected]> | 2010-10-27 08:44:35 +0200 |
commit | c6b10cd986c53f1a99a90f32a66d5058f1d1a3eb (patch) | |
tree | 0764c9a6b7635375ab891926559593d07cada46d /src/gallium/winsys/r600 | |
parent | 412b9608838b872bc294569b3ee913343a7e66f6 (diff) |
r600g: In radeon_bo(), call LIST_INITHEAD early.
radeon_bo_destroy() will want to read the list field. Without this patch,
we'd end up evaluating the list pointers before they have been properly
set up when we destroyed the newly created bo if it cannot be mapped.
Signed-off-by: Tilman Sauerbeck <[email protected]>
Diffstat (limited to 'src/gallium/winsys/r600')
-rw-r--r-- | src/gallium/winsys/r600/drm/radeon_bo.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/winsys/r600/drm/radeon_bo.c b/src/gallium/winsys/r600/drm/radeon_bo.c index 9d664b7e537..2d08686fc43 100644 --- a/src/gallium/winsys/r600/drm/radeon_bo.c +++ b/src/gallium/winsys/r600/drm/radeon_bo.c @@ -82,6 +82,7 @@ struct radeon_bo *radeon_bo(struct radeon *radeon, unsigned handle, bo->handle = handle; pipe_reference_init(&bo->reference, 1); bo->alignment = alignment; + LIST_INITHEAD(&bo->fencedlist); if (handle) { struct drm_gem_open open_arg; @@ -123,7 +124,6 @@ struct radeon_bo *radeon_bo(struct radeon *radeon, unsigned handle, if (ptr) { memcpy(bo->data, ptr, size); } - LIST_INITHEAD(&bo->fencedlist); return bo; } |