Mesa (7.8): r200: Don't flush when closing elts in KMS.

Pauli Nieminen suokko at kemper.freedesktop.org
Sun Mar 21 21:45:06 UTC 2010


Module: Mesa
Branch: 7.8
Commit: 0900544fb54cbc2127b8729393c9c1308cd218f9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0900544fb54cbc2127b8729393c9c1308cd218f9

Author: Pauli Nieminen <suokkos at gmail.com>
Date:   Sun Mar 21 22:55:13 2010 +0200

r200: Don't flush when closing elts in KMS.

Flush in middle of rendering in KMS is not allowed because
buffers are discarded in flush.

Fixes crash when emiting split indices with RADEON_DEBUG=all.

---

 src/mesa/drivers/dri/r200/r200_cmdbuf.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/r200/r200_cmdbuf.c b/src/mesa/drivers/dri/r200/r200_cmdbuf.c
index 2f2b8d9..382ae0d 100644
--- a/src/mesa/drivers/dri/r200/r200_cmdbuf.c
+++ b/src/mesa/drivers/dri/r200/r200_cmdbuf.c
@@ -189,7 +189,8 @@ void r200FlushElts(GLcontext *ctx)
    if (R200_ELT_BUF_SZ > elt_used)
      radeonReturnDmaRegion(&rmesa->radeon, R200_ELT_BUF_SZ - elt_used);
 
-   if (radeon_is_debug_enabled(RADEON_SYNC, RADEON_CRITICAL)) {
+   if (radeon_is_debug_enabled(RADEON_SYNC, RADEON_CRITICAL)
+   	&& !rmesa->radeon.radeonScreen->kernel_mm) {
       radeon_print(RADEON_SYNC, RADEON_NORMAL, "%s: Syncing\n", __FUNCTION__);
       radeonFinish( rmesa->radeon.glCtx );
    }




More information about the mesa-commit mailing list