diff options
Diffstat (limited to 'kernel/wait.c')
-rw-r--r-- | kernel/wait.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/wait.c b/kernel/wait.c index ce0daa320a26..dec68bd4e9d8 100644 --- a/kernel/wait.c +++ b/kernel/wait.c | |||
@@ -333,7 +333,8 @@ int __wait_on_atomic_t(wait_queue_head_t *wq, struct wait_bit_queue *q, | |||
333 | prepare_to_wait(wq, &q->wait, mode); | 333 | prepare_to_wait(wq, &q->wait, mode); |
334 | val = q->key.flags; | 334 | val = q->key.flags; |
335 | if (atomic_read(val) == 0) | 335 | if (atomic_read(val) == 0) |
336 | ret = (*action)(val); | 336 | break; |
337 | ret = (*action)(val); | ||
337 | } while (!ret && atomic_read(val) != 0); | 338 | } while (!ret && atomic_read(val) != 0); |
338 | finish_wait(wq, &q->wait); | 339 | finish_wait(wq, &q->wait); |
339 | return ret; | 340 | return ret; |