diff --git a/packages/graphics/libdrm/patches/patch-upstream-1.diff b/packages/graphics/libdrm/patches/patch-upstream-1.diff new file mode 100644 index 0000000000..300ec2fab4 --- /dev/null +++ b/packages/graphics/libdrm/patches/patch-upstream-1.diff @@ -0,0 +1,25 @@ +From a4041e096ce0faea3dd39b4d78014d45a8cacec0 Mon Sep 17 00:00:00 2001 +From: Chris Wilson +Date: Sun, 07 Mar 2010 14:15:40 +0000 +Subject: intel: Repeat execbuffer if interrupted by signal + +Repeat while EINTR, not EAGAIN! One more source of corruption +erradicated, hurray! + +Signed-off-by: Chris Wilson +--- +diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c +index 21fe099..8838536 100644 +--- a/intel/intel_bufmgr_gem.c ++++ b/intel/intel_bufmgr_gem.c +@@ -1559,7 +1559,7 @@ drm_intel_gem_bo_exec2(drm_intel_bo *bo, int used, + do { + ret = ioctl(bufmgr_gem->fd, DRM_IOCTL_I915_GEM_EXECBUFFER2, + &execbuf); +- } while (ret != 0 && errno == EAGAIN); ++ } while (ret != 0 && errno == EINTR); + + if (ret != 0) { + ret = -errno; +-- +cgit v0.8.3-6-g21f6