diff options
author | Nicolai Hähnle <[email protected]> | 2016-09-30 15:21:00 +0200 |
---|---|---|
committer | Nicolai Hähnle <[email protected]> | 2016-10-05 15:51:56 +0200 |
commit | b5cd7dfe3e9a04bf6edd5d100f7c74b8fcb5c277 (patch) | |
tree | 454864b3310df56bfb4d3984e4d2bbc470784afc /src/gallium/drivers/r600 | |
parent | a1fa8b731fc5ae12b3f4961dd3a841b384177564 (diff) |
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 <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600')
-rw-r--r-- | src/gallium/drivers/r600/r600_hw_context.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_hw_context.c b/src/gallium/drivers/r600/r600_hw_context.c index dc5ad7537b9..bc6217ad223 100644 --- a/src/gallium/drivers/r600/r600_hw_context.c +++ b/src/gallium/drivers/r600/r600_hw_context.c @@ -258,6 +258,9 @@ void r600_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; + r600_preflush_suspend_features(&ctx->b); /* flush the framebuffer cache */ |