summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2009-12-02 20:51:53 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2009-12-02 20:54:54 +0000
commita938673ee84d51ef655c37dfa7bbc5c35334cd28 (patch)
tree344a8aa3d19d2d37e45b6a04812483edb258636b
parent98e11210367c950e3f932419d2a4722cf971885d (diff)
batch: Downgrade batch submission from a FatalError.
If we wedge the GPU then we will return -EIO for the current batch and then attempt to reset the GPU. Meanwhile the X server detects the error, throws a FatalError and to all intents and purposes appears to crash to the user - whereas before it often just appeared to momentarily freeze. Of course, on older hardware the server remains frozen until we can find a way to reset those GPUs at runtime. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/i830_batchbuffer.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/i830_batchbuffer.c b/src/i830_batchbuffer.c
index 9d691d16..12e044af 100644
--- a/src/i830_batchbuffer.c
+++ b/src/i830_batchbuffer.c
@@ -160,7 +160,9 @@ void intel_batch_flush(ScrnInfoPtr scrn)
dri_bo_exec(intel->batch_bo, intel->batch_used, NULL, 0,
0xffffffff);
if (ret != 0)
- FatalError("Failed to submit batchbuffer: %s\n",
+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
+ "Failed to submit batch buffer, expect rendering corruption "
+ "or even a frozen display: %s.\n",
strerror(-ret));
while (!list_is_empty(&intel->batch_pixmaps)) {