[RFC PATCH 0/5] softirq: Per vector threading v2

From: Frederic Weisbecker
Date: Mon Jan 15 2018 - 23:41:08 EST


So this set is in a testable state. I addressed preliminary reviews from
Eric Dumazet, Paolo Abeni and Linus.

You may want to play with MAX_SOFTIRQ_RESTART value, which is now the
number of calls allowed for a vector in a jiffy frame before it gets
queued to the workqueue. I set it to the arbitrary value of 20 which is
likely too low.

Also I'm not sure about the last patch. For example in the usecase of
Dmitry Safonov it may be better not to apply it. I guess only testing
and reviews can tell.

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
softirq/thread

HEAD: 5a4c02b25bdcd853e3874d5319492ea6097f6e70

Thanks,
Frederic
---

Frederic Weisbecker (5):
softirq: Account time and iteration stats per vector
softirq: Per vector deferment to workqueue
softirq: Defer to workqueue when rescheduling is needed
softirq: Replace ksoftirqd with workqueues entirely
softirq: Reset vector call counter before workqueue completion


Documentation/RCU/stallwarn.txt | 4 +-
include/linux/interrupt.h | 7 +-
kernel/sched/cputime.c | 12 +--
kernel/sched/sched.h | 4 +-
kernel/softirq.c | 232 +++++++++++++++++++++++++---------------
net/ipv4/tcp_output.c | 5 +-
6 files changed, 161 insertions(+), 103 deletions(-)