summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_hw_context.c
diff options
context:
space:
mode:
authorNicolai Hähnle <nicolai.haehnle@amd.com>2016-09-30 15:21:00 +0200
committerNicolai Hähnle <nicolai.haehnle@amd.com>2016-10-05 15:51:56 +0200
commitb5cd7dfe3e9a04bf6edd5d100f7c74b8fcb5c277 (patch)
tree454864b3310df56bfb4d3984e4d2bbc470784afc /src/gallium/drivers/radeonsi/si_hw_context.c
parenta1fa8b731fc5ae12b3f4961dd3a841b384177564 (diff)
downloadexternal_mesa3d-b5cd7dfe3e9a04bf6edd5d100f7c74b8fcb5c277.zip
external_mesa3d-b5cd7dfe3e9a04bf6edd5d100f7c74b8fcb5c277.tar.gz
external_mesa3d-b5cd7dfe3e9a04bf6edd5d100f7c74b8fcb5c277.tar.bz2
gallium/radeon: implement set_device_reset_callback
Check for device reset on flush. It would be nicer if the kernel just reported this as an error on the submit ioctl (and similarly for fences), but this will do for now. Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_hw_context.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_hw_context.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_hw_context.c b/src/gallium/drivers/radeonsi/si_hw_context.c
index 3373fb8..7c11baf 100644
--- a/src/gallium/drivers/radeonsi/si_hw_context.c
+++ b/src/gallium/drivers/radeonsi/si_hw_context.c
@@ -103,6 +103,9 @@ void si_context_gfx_flush(void *context, unsigned flags,
if (!radeon_emitted(cs, ctx->b.initial_gfx_cs_size))
return;
+ if (r600_check_device_reset(&ctx->b))
+ return;
+
ctx->gfx_flush_in_progress = true;
r600_preflush_suspend_features(&ctx->b);