Thread (12 messages) flat view 12 messages, 6 authors, 2013-01-04

Re: [PATCH net-next] softirq: reduce latencies

From: Ben Hutchings <hidden>
Date: 2013-01-03 22:08:06
Also in: lkml

On Thu, 2013-01-03 at 04:28 -0800, Eric Dumazet wrote:
From: Eric Dumazet <edumazet@google.com>

In various network workloads, __do_softirq() latencies can be up
to 20 ms if HZ=1000, and 200 ms if HZ=100.

This is because we iterate 10 times in the softirq dispatcher,
and some actions can consume a lot of cycles.

This patch changes the fallback to ksoftirqd condition to :

- A time limit of 2 ms.
- need_resched() being set on current task
[...]
quoted hunk ↗ jump to hunk
--- a/kernel/softirq.c
+++ b/kernel/softirq.c
[...]
-#define MAX_SOFTIRQ_RESTART 10
+#define MAX_SOFTIRQ_TIME  min(1, (2*HZ/1000))
[...]

Really?  Never iterate if HZ < 500?

Ben.

-- 
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help