Skip to content

softirq: Consolidate and optimize softirq mask v2

Frederic Weisbecker lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest10 patches 1 replyIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/10ia64: Convert local_softirq_pending() to per-cpu opsarch/ia64/include/asm/hardirq.h+1 -10 replies
2/10sparc: Convert local_softirq_pending() to use per-cpu oparch/sparc/include/asm/hardirq_64.h+1 -10 replies
3/10softirq: Turn default irq_cpustat_t to standard per-cpuinclude/linux/irq_cpustat.h kernel/softirq.c+4 -40 replies
4/10softirq: Consolidate default local_softirq_pending() implementationsinclude/linux/interrupt.h include/linux/irq_cpustat.h+15 -50 replies
5/10ia64: Switch to generic local_softirq_pending() implementationarch/ia64/include/asm/hardirq.h+1 -10 replies
6/10parisc: Switch to generic local_softirq_pending() implementationarch/parisc/include/asm/hardirq.h+0 -80 replies
7/10powerpc: Switch to generic local_softirq_pending() implementationarch/powerpc/include/asm/hardirq.h+0 -71 reply
8/10sparc: Switch to generic local_softirq_pending() implementationarch/sparc/include/asm/hardirq_64.h+3 -20 replies
9/10x86: Switch to generic local_softirq_pending() implementationarch/x86/include/asm/hardirq.h+0 -80 replies
10/10softirq/s390: Move default mutators of overwritten softirq mask to s390arch/s390/include/asm/hardirq.h include/linux/interrupt.h+2 -70 replies

Reviews trailers per patch

1 of 10 patches has a Reviewed-by or Acked-by.

PatchMichael Ellerman
1/10
2/10
3/10
4/10
5/10
6/10
7/10A-b
8/10
9/10
10/10

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH 00/10] softirq: Consolidate and optimize softirq mask v2

Only the last patch has changed since v1 to integrate review from peterz.

Quote from the v1 summary:

The softirq mask and its accessors/mutators have many implementations scattered around many architectures. Most do the same things consisting in a field in a per-cpu struct (often irq_cpustat_t) accessed through per-cpu ops. We can provide instead a generic efficient version that most of them can use. In fact s390 is the only exception because the field is stored in lowcore.

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

HEAD: cce39c380f2dbe3e92db6a018c8ba65579c6311b

Thanks,
Frederic
---

Frederic Weisbecker (10):
ia64: Convert local_softirq_pending() to per-cpu ops
sparc: Convert local_softirq_pending() to use per-cpu op
softirq: Turn default irq_cpustat_t to standard per-cpu
softirq: Consolidate default local_softirq_pending() implementations
ia64: Switch to generic local_softirq_pending() implementation
parisc: Switch to generic local_softirq_pending() implementation
powerpc: Switch to generic local_softirq_pending() implementation
sparc: Switch to generic local_softirq_pending() implementation
x86: Switch to generic local_softirq_pending() implementation softirq/s390: Move default mutators of overwritten softirq mask to s390

 arch/ia64/include/asm/hardirq.h     |  2 +-
 arch/parisc/include/asm/hardirq.h   |  8 --------
 arch/powerpc/include/asm/hardirq.h  |  7 -------
 arch/s390/include/asm/hardirq.h     |  2 ++
 arch/sparc/include/asm/hardirq_64.h |  5 +++--
 arch/x86/include/asm/hardirq.h      |  8 --------
 include/linux/interrupt.h           | 13 ++++++++++---
 include/linux/irq_cpustat.h         | 10 +++-------
 kernel/softirq.c                    |  4 ++--
 9 files changed, 21 insertions(+), 38 deletions(-)