From: Chris Wilson Date: Tue, 22 Sep 2009 23:43:56 +0000 (+0100) Subject: drm/i915: Handle ERESTARTSYS during page fault X-Git-Tag: v2.6.32-rc1~52^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c715089f49844260f1eeae8e3b55af9468ba1325;p=pandora-kernel.git drm/i915: Handle ERESTARTSYS during page fault During a page fault and rebinding the buffer there exists a window for a signal to arrive during the i915_wait_request() and trigger a ERESTARTSYS. This used to be handled by returning SIGBUS and thereby killing the application. Try 'cairo-perf-trace & cairo-test-suite' and watch X go boom! The solution as suggested by H. Peter Anvin is to simply return NOPAGE and leave the higher layers to spot we did not fill the page and resubmit the page fault. Signed-off-by: Chris Wilson Cc: stable@kernel.org [anholt: Mostly squash it with another commit] --- Reading git-diff-tree failed