Re: Inline local_bh_disable when TRACE_IRQFLAGS

From: Ingo Molnar
Date: Wed Dec 19 2007 - 06:32:26 EST



* Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> wrote:

> Hi Ingo:
>
> I noticed that local_bh_disable is now always out-of-line. The change
> was made when TRACE_IRQFLAGS was added. However, with TRACE_IRQFLAGS
> off, local_bh_disable does exactly the same work as before. In
> particular, it does pretty much the same as what preempt_disable does
> and the latter is always inline.
>
> So I'm wondering if it would be reasonable to make it out-of-line when
> TRACE_IRQFLAGS is off. This may make a difference because the
> networking stack is a frequent user of local_bh_disable and
> local_bh_enable.

do you mean to make it inline again?

(btw., generally i think local_bh_disable() is a poor API because it is
opaque about the data structure dependency that it governs. Explicit
exclusion rules generally work better.)

Ingo
--
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/