diff options
author | Eric Anholt <eric@anholt.net> | 2009-01-04 17:37:18 -0800 |
---|---|---|
committer | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2009-01-26 10:22:09 +0100 |
commit | 2206db89eddfbb0b3e3e3b775d2dd7ebed3dc8a7 (patch) | |
tree | d074feb12697241ad00825cfffce5dbb9061b612 | |
parent | e3822ea4caa86dac6123366de467df165b256220 (diff) |
intel: Retry pin ioctl on -EINTR.
-rw-r--r-- | libdrm/intel/intel_bufmgr_gem.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libdrm/intel/intel_bufmgr_gem.c b/libdrm/intel/intel_bufmgr_gem.c index 9e0b6a12..b3702a10 100644 --- a/libdrm/intel/intel_bufmgr_gem.c +++ b/libdrm/intel/intel_bufmgr_gem.c @@ -1007,7 +1007,10 @@ drm_intel_gem_bo_pin(drm_intel_bo *bo, uint32_t alignment) pin.handle = bo_gem->gem_handle; pin.alignment = alignment; - ret = ioctl(bufmgr_gem->fd, DRM_IOCTL_I915_GEM_PIN, &pin); + do { + ret = ioctl(bufmgr_gem->fd, DRM_IOCTL_I915_GEM_PIN, &pin); + } while (ret == -1 && errno == EINTR); + if (ret != 0) return -errno; |