diff options
Diffstat (limited to 'kernel/sched.c')
| -rw-r--r-- | kernel/sched.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index c3ad3427a2a5..7266b912139f 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
| @@ -5536,8 +5536,11 @@ need_resched_nonpreemptible: | |||
| 5536 | 5536 | ||
| 5537 | post_schedule(rq); | 5537 | post_schedule(rq); |
| 5538 | 5538 | ||
| 5539 | if (unlikely(reacquire_kernel_lock(current) < 0)) | 5539 | if (unlikely(reacquire_kernel_lock(current) < 0)) { |
| 5540 | prev = rq->curr; | ||
| 5541 | switch_count = &prev->nivcsw; | ||
| 5540 | goto need_resched_nonpreemptible; | 5542 | goto need_resched_nonpreemptible; |
| 5543 | } | ||
| 5541 | 5544 | ||
| 5542 | preempt_enable_no_resched(); | 5545 | preempt_enable_no_resched(); |
| 5543 | if (need_resched()) | 5546 | if (need_resched()) |
