diff --git a/linux-core/mga_drv.c b/linux-core/mga_drv.c index 0ccf0a70..a8cf0c78 100644 --- a/linux-core/mga_drv.c +++ b/linux-core/mga_drv.c @@ -545,6 +545,7 @@ int mga_release(struct inode *inode, struct file *filp) break; } } + current->state = TASK_RUNNING; remove_wait_queue(&dev->lock.lock_queue, &entry); if(!retcode) { mga_reclaim_buffers(dev, priv->pid); diff --git a/linux/mga_drv.c b/linux/mga_drv.c index 0ccf0a70..a8cf0c78 100644 --- a/linux/mga_drv.c +++ b/linux/mga_drv.c @@ -545,6 +545,7 @@ int mga_release(struct inode *inode, struct file *filp) break; } } + current->state = TASK_RUNNING; remove_wait_queue(&dev->lock.lock_queue, &entry); if(!retcode) { mga_reclaim_buffers(dev, priv->pid);