diff options
author | Corbin Simpson <MostAwesomeDude@gmail.com> | 2010-01-25 11:04:55 -0800 |
---|---|---|
committer | Corbin Simpson <MostAwesomeDude@gmail.com> | 2010-01-25 11:30:39 -0800 |
commit | 1571602153128971ae9ed549d633d67aac65da14 (patch) | |
tree | 63b2bac527fe5253ff1fe9eb7882dfc983fc7d8c | |
parent | c486bfb463f30bf894d2dae1326973aeb3de1159 (diff) |
radeong: Make sure that we're not emitting relocations for local buffers.
Split from Marek's immd-mode patch.
-rw-r--r-- | src/gallium/winsys/drm/radeon/core/radeon_r300.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gallium/winsys/drm/radeon/core/radeon_r300.c b/src/gallium/winsys/drm/radeon/core/radeon_r300.c index 0253bc2527..d759beaba1 100644 --- a/src/gallium/winsys/drm/radeon/core/radeon_r300.c +++ b/src/gallium/winsys/drm/radeon/core/radeon_r300.c @@ -81,9 +81,13 @@ static void radeon_write_cs_reloc(struct radeon_winsys* winsys, uint32_t flags) { int retval = 0; + struct radeon_pipe_buffer* radeon_buffer = + (struct radeon_pipe_buffer*)pbuffer; - retval = radeon_cs_write_reloc(winsys->priv->cs, - ((struct radeon_pipe_buffer*)pbuffer)->bo, rd, wd, flags); + assert(!radeon_buffer->pb); + + retval = radeon_cs_write_reloc(winsys->priv->cs, radeon_buffer->bo, + rd, wd, flags); if (retval) { debug_printf("radeon: Relocation of %p (%d, %d, %d) failed!\n", |