[PATCH] Fix Intel/Sharp command set erase suspend bug
When we sleep and wait for a suspended operation to be resumed, go back and check until it's ready -- don't just continue after the first time we're woken. This can cause file system corruption. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
ba8379b220
commit
967bf623e9
|
@ -1087,7 +1087,7 @@ static int inval_cache_and_wait_for_operation(
|
|||
}
|
||||
spin_lock(chip->mutex);
|
||||
|
||||
if (chip->state != chip_state) {
|
||||
while (chip->state != chip_state) {
|
||||
/* Someone's suspended the operation: sleep */
|
||||
DECLARE_WAITQUEUE(wait, current);
|
||||
set_current_state(TASK_UNINTERRUPTIBLE);
|
||||
|
|
Loading…
Reference in a new issue