Mesa (master): swr/rast: Don't transition hottile resolved-> dirty during store tiles
Tim Rowley
torowley at kemper.freedesktop.org
Fri Jun 16 21:30:05 UTC 2017
Module: Mesa
Branch: master
Commit: bea00a7b6ef9483f7ced507df863259e89c8c09c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bea00a7b6ef9483f7ced507df863259e89c8c09c
Author: Tim Rowley <timothy.o.rowley at intel.com>
Date: Thu Jun 8 14:44:32 2017 -0500
swr/rast: Don't transition hottile resolved->dirty during store tiles
Fixes crash when dumping render targets and RT surface has been deleted.
Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
---
src/gallium/drivers/swr/rasterizer/core/backend.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/swr/rasterizer/core/backend.cpp b/src/gallium/drivers/swr/rasterizer/core/backend.cpp
index ca9a8b4044..524c4f4e60 100644
--- a/src/gallium/drivers/swr/rasterizer/core/backend.cpp
+++ b/src/gallium/drivers/swr/rasterizer/core/backend.cpp
@@ -386,7 +386,10 @@ void ProcessStoreTileBE(DRAW_CONTEXT *pDC, uint32_t workerId, uint32_t macroTile
if (pHotTile->state == HOTTILE_DIRTY || pHotTile->state == HOTTILE_RESOLVED)
{
- pHotTile->state = (HOTTILE_STATE)pDesc->postStoreTileState;
+ if (!(pDesc->postStoreTileState == HOTTILE_DIRTY && pHotTile->state == HOTTILE_RESOLVED))
+ {
+ pHotTile->state = (HOTTILE_STATE)pDesc->postStoreTileState;
+ }
}
}
AR_END(BEStoreTiles, 1);
More information about the mesa-commit
mailing list