diff options
Diffstat (limited to 'linux-core/i810_drv.c')
-rw-r--r-- | linux-core/i810_drv.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/linux-core/i810_drv.c b/linux-core/i810_drv.c index a001b544..5d4a9c12 100644 --- a/linux-core/i810_drv.c +++ b/linux-core/i810_drv.c @@ -509,6 +509,7 @@ int i810_release(struct inode *inode, struct file *filp) DECLARE_WAITQUEUE(entry, current); add_wait_queue(&dev->lock.lock_queue, &entry); for (;;) { + current->state = TASK_INTERRUPTIBLE; if (!dev->lock.hw_lock) { /* Device has been unregistered */ retcode = -EINTR; @@ -523,7 +524,6 @@ int i810_release(struct inode *inode, struct file *filp) } /* Contention */ atomic_inc(&dev->total_sleeps); - current->state = TASK_INTERRUPTIBLE; schedule(); if (signal_pending(current)) { retcode = -ERESTARTSYS; |