RFC softirq: Per vector threading v2
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest5 patches 7 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/5 | softirq: Account time and iteration stats per vectorkernel/ | +26 | 0 replies | |
| 2/5 | softirq: Per vector deferment to workqueueinclude/ kernel/ kernel/ +1 more | +117 | 0 replies | |
| 3/5 | softirq: Defer to workqueue when rescheduling is neededkernel/ | +8 | 0 replies | |
| 4/5 | softirq: Replace ksoftirqd with workqueues entirelyDocumentation/ include/ kernel/ +3 more | +31 | 0 replies | |
| 5/5 | softirq: Reset vector call counter before workqueue completionkernel/ | +5 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [RFC PATCH 0/5] softirq: Per vector threading v2
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(-)