We don't actually require this in the cpu_relax() polling case, so just
cuddle these around the sleeping version.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
                clear_thread_flag(TIF_POLLING_NRFLAG);
                smp_mb__after_clear_bit();
 
+               set_bl_bit();
                if (!need_resched()) {
                        local_irq_enable();
                        cpu_sleep();
                        local_irq_enable();
 
                set_thread_flag(TIF_POLLING_NRFLAG);
+               clear_bl_bit();
        } else
                poll_idle();
 }
                        check_pgt_cache();
                        rmb();
 
-                       set_bl_bit();
                        local_irq_disable();
                        /* Don't trace irqs off for idle */
                        stop_critical_timings();
                         */
                        WARN_ON(irqs_disabled());
                        start_critical_timings();
-                       clear_bl_bit();
                }
 
                tick_nohz_restart_sched_tick();