if (r < 1 && (adev->in_gpu_reset || in_interrupt()))
goto failed_kiq_read;
+ if (in_interrupt())
+ might_sleep();
+
while (r < 1 && cnt++ < MAX_KIQ_REG_TRY) {
msleep(MAX_KIQ_REG_BAILOUT_INTERVAL);
r = amdgpu_fence_wait_polling(ring, seq, MAX_KIQ_REG_WAIT);
if (r < 1 && (adev->in_gpu_reset || in_interrupt()))
goto failed_kiq_write;
+ if (in_interrupt())
+ might_sleep();
+
while (r < 1 && cnt++ < MAX_KIQ_REG_TRY) {
+
msleep(MAX_KIQ_REG_BAILOUT_INTERVAL);
r = amdgpu_fence_wait_polling(ring, seq, MAX_KIQ_REG_WAIT);
}