Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c746e205 authored by Dave Airlie's avatar Dave Airlie Committed by Dave Airlie
Browse files

drm/radeon/kms: don't allow ERESTART to hit userspace.



the pre-r600 fence code returns ebusy if we get hit by a signal
so we should continue to do that.

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 620f3781
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -199,7 +199,7 @@ int r600_fence_wait(struct radeon_fence *fence, bool intr, bool lazy)
			schedule_timeout(1);

		if (intr && signal_pending(current)) {
			ret = -ERESTART;
			ret = -ERESTARTSYS;
			break;
		}
	}
@@ -225,8 +225,12 @@ int radeon_fence_wait(struct radeon_fence *fence, bool intr)
		return 0;
	}

	if (rdev->family >= CHIP_R600)
		return r600_fence_wait(fence, intr, 0);
	if (rdev->family >= CHIP_R600) {
		r = r600_fence_wait(fence, intr, 0);
		if (r == -ERESTARTSYS)
			return -EBUSY;
		return r;
	}

retry:
	cur_jiffies = jiffies;