Re: BUG: tracer_alloc_buffers returned with preemption imbalance

From: Fengguang Wu
Date: Sat Jun 23 2012 - 13:48:29 EST


> > static inline int rcu_blocking_is_gp(void)
> > {
> > might_sleep(); /* Check for RCU read-side critical section. */
> > + preempt_disable();
> > return num_online_cpus() <= 1;
> > + preempt_enable();
> > }
>
> Thank you! I have no idea how a preempt_disable() causes that badness
> to happen, but this commit is not yet critically important, so I will
> drop it.

preempt_enable() becomes dead code because of the return statement?
I wonder why gcc didn't issue a warning (or I failed to catch it)...

Thanks,
Fengguang
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/