* Tim Chen <[email protected]> wrote:
> Ingo,
>
> The recent changes from irqtrace feature has added overheads to
> local_bh_disable and local_bh_enable that reduces UDP performance
> across x86_64 and IA64, even though IA64 does not support the irqtrace
> feature. Patch in question is
>
> [PATCH]lockdep: irqtrace subsystem, core
> http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=c
> ommit;h=de30a2b355ea85350ca2f58f3b9bf4e5bc007986
>
> Prior to this patch, local_bh_disable was a short macro. Now it is a
> function which calls __local_bh_disable with added irq flags save and
> restore. The irq flags save and restore were also added to
> local_bh_enable, probably for injecting the trace irqs code. This
> overhead is on the generic code path across all architectures. On a
> IA_64 test machine (Itanium-2 1.6 GHz) running a benchmark like
> netperf's UDP streaming test, the added overhead results in a drop of
> 3% in throughput, as udp_sendmsg calls the local_bh_enable/disable
> several times. Other workloads that have heavy usages of
> local_bh_enable/disable could also be affected. The patch ideally
> should not have affected IA-64 performance as it does not have IRQ
> tracing support. A significant portion of the overhead is in the
> added irq flags save and restore, which I think is not needed if IRQ
> tracing is unused. A suggested patch is attached below that recovers
> the lost performance. However, the "ifdef"s in the patch are a bit
> ugly.
agreed - this side-effect of irqtracing should not happen. The #ifdefs
are ugly, but i can see no better way either.
> Signed-off-by: Tim Chen <[email protected]>
Acked-by: Ingo Molnar <[email protected]>
Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]