X-Git-Url: http://git.monstr.eu/?a=blobdiff_plain;f=kernel%2Fentry%2Fcommon.c;h=bf16395b9e1351f843edce4335df8bddb5a49686;hb=ce09673636f9581d2e2e24af785c463c030a1fd8;hp=a0b3b04fb5965995ea991f8aa6e375c62e8d9c2d;hpb=51e6f07cb12e50bfc71181bd08bad5f0a9b5e9e2;p=linux-2.6-microblaze.git diff --git a/kernel/entry/common.c b/kernel/entry/common.c index a0b3b04fb596..bf16395b9e13 100644 --- a/kernel/entry/common.c +++ b/kernel/entry/common.c @@ -5,6 +5,7 @@ #include #include #include +#include #include "common.h" @@ -186,7 +187,7 @@ static unsigned long exit_to_user_mode_loop(struct pt_regs *regs, local_irq_disable_exit_to_user(); /* Check if any of the above work has queued a deferred wakeup */ - rcu_nocb_flush_deferred_wakeup(); + tick_nohz_user_enter_prepare(); ti_work = READ_ONCE(current_thread_info()->flags); } @@ -202,7 +203,7 @@ static void exit_to_user_mode_prepare(struct pt_regs *regs) lockdep_assert_irqs_disabled(); /* Flush pending rcuog wakeup before the last need_resched() check */ - rcu_nocb_flush_deferred_wakeup(); + tick_nohz_user_enter_prepare(); if (unlikely(ti_work & EXIT_TO_USER_MODE_WORK)) ti_work = exit_to_user_mode_loop(regs, ti_work);