drivers/macintosh/smu.c: fix locking snafu
It got its lock and unlock backwards. Fixes http://bugzilla.kernel.org/show_bug.cgi?id=8334 (obviously, this code could be using plain old spin_lock_irq(), too) Cc: <matthias.kaehlcke@gmail.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
07a0cfec30
Коммит
94256dd680
|
@ -1259,9 +1259,9 @@ static int smu_release(struct inode *inode, struct file *file)
|
|||
set_current_state(TASK_UNINTERRUPTIBLE);
|
||||
if (pp->cmd.status != 1)
|
||||
break;
|
||||
spin_lock_irqsave(&pp->lock, flags);
|
||||
schedule();
|
||||
spin_unlock_irqrestore(&pp->lock, flags);
|
||||
schedule();
|
||||
spin_lock_irqsave(&pp->lock, flags);
|
||||
}
|
||||
set_current_state(TASK_RUNNING);
|
||||
remove_wait_queue(&pp->wait, &wait);
|
||||
|
|
Загрузка…
Ссылка в новой задаче