android_kernel_xiaomi_sm8350/arch/powerpc/kernel
Benjamin Herrenschmidt e6768a4f39 [POWERPC] Fixup softirq preempt count
This fixes the handling of the preempt count when switching
interrupt stacks so that HW interrupt properly get the softirq
mask copied over from the previous stack.

It also initializes the softirq stack preempt_count to 0 instead
of SOFTIRQ_OFFSET, like x86, as __do_softirq() does the increment,
and we hit some lockdep checks if we have it twice.

That means we do run for a little while off the softirq stack
with the preempt-count set to 0, which could be deadly if we
try to take a softirq at that point, however we do so with
interrupts disabled, so I think we are ok.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-17 07:46:11 +10:00
..
vdso32
vdso64
align.c
asm-offsets.c [POWERPC] iSeries: Use alternate paca structure for booting 2008-04-15 21:21:25 +10:00
audit.c
btext.c [LIB]: Make PowerPC LMB code generic so sparc64 can use it too. 2008-02-13 16:56:49 -08:00
clock.c
compat_audit.c
cpu_setup_6xx.S
cpu_setup_44x.S [POWERPC] 4xx: Add AMCC 460EX/460GT support to cputable.c & cpu_setup_44x.S 2008-03-26 07:19:16 -05:00
cpu_setup_pa6t.S
cpu_setup_ppc970.S
cputable.c [POWERPC] 4xx: Add AMCC 460EX/460GT support to cputable.c & cpu_setup_44x.S 2008-03-26 07:19:16 -05:00
crash_dump.c [LIB]: Make PowerPC LMB code generic so sparc64 can use it too. 2008-02-13 16:56:49 -08:00
crash.c [LIB]: Make PowerPC LMB code generic so sparc64 can use it too. 2008-02-13 16:56:49 -08:00
dma_64.c iommu sg: powerpc: convert iommu to use the IOMMU helper 2008-02-05 09:44:11 -08:00
entry_32.S
entry_64.S
firmware.c
fpu.S
head_8xx.S [POWERPC] 8xx: fix swap 2008-03-07 08:42:28 -06:00
head_32.S [POWERPC] Remove dead code at KernelAltiVec 2008-02-26 22:17:03 +11:00
head_40x.S
head_44x.S
head_64.S [POWERPC] Initialize paca->current earlier 2008-04-17 07:46:10 +10:00
head_booke.h
head_fsl_booke.S
ibmebus.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
idle_6xx.S
idle_power4.S
idle.c
init_task.c
io.c
iomap.c
iommu.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
irq.c [POWERPC] Fixup softirq preempt count 2008-04-17 07:46:11 +10:00
isa-bridge.c [POWERPC] Replace logical-AND by bit-AND in pci_process_ISA_OF_ranges() 2008-04-07 10:03:02 +10:00
kprobes.c [POWERPC] Kill sparse warnings in kprobes 2008-02-20 13:33:37 +11:00
l2cr_6xx.S
legacy_serial.c [POWERPC] Fix legacy serial search for opb bus ports 2008-02-06 16:30:00 +11:00
lparcfg.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
machine_kexec_32.c
machine_kexec_64.c
machine_kexec.c [LIB]: Make PowerPC LMB code generic so sparc64 can use it too. 2008-02-13 16:56:49 -08:00
Makefile [POWERPC] Remove generated files on make clean 2008-02-14 22:11:02 +11:00
misc_32.S [POWERPC] Add __ucmpdi2 for 64-bit comparisons in 32-bit kernels 2008-03-13 09:39:55 +11:00
misc_64.S
misc.S
module_32.c
module_64.c
msi.c
nvram_64.c
of_device.c
of_platform.c
paca.c [POWERPC] Initialize paca->current earlier 2008-04-17 07:46:10 +10:00
pci_32.c
pci_64.c [POWERPC] Always hookup PHB IO resource even when empty 2008-01-25 22:52:53 +11:00
pci_dn.c
pci-common.c [POWERPC] Fix bogus test for unassigned PCI resources 2008-03-13 10:09:27 +11:00
pmc.c [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
ppc32.h
ppc_ksyms.c [POWERPC] Add hand-coded assembly strcmp 2008-04-07 10:03:03 +10:00
proc_ppc64.c
process.c Merge branch 'linux-2.6' 2008-04-14 21:11:02 +10:00
prom_init.c [POWERPC] Efika: prune fixups and make them more carefull 2008-01-26 15:32:18 -07:00
prom_parse.c
prom.c [POWERPC] move_device_tree() should be __init 2008-04-01 20:43:08 +11:00
ptrace32.c [POWERPC] Use regset code for compat PTRACE_*REGS* calls 2008-02-07 20:40:21 +11:00
ptrace.c [POWERPC] user_regset PTRACE_SETREGS regression fix 2008-03-20 10:10:56 +11:00
rio.c
rtas_flash.c Merge branch 'linux-2.6' 2008-04-14 21:11:02 +10:00
rtas_pci.c [POWERPC] Convert pci and eeh code to of_device_is_available 2008-04-07 13:49:25 +10:00
rtas-proc.c
rtas-rtc.c
rtas.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
semaphore.c
setup_32.c [POWERPC] Add kernel parameter to set l3cr for MPC745x 2008-04-01 20:43:09 +11:00
setup_64.c [LIB]: Make PowerPC LMB code generic so sparc64 can use it too. 2008-02-13 16:56:49 -08:00
setup-common.c [POWERPC] Add 'model: ...' line to common show_cpuinfo() 2008-03-26 08:44:04 +11:00
setup.h
signal_32.c
signal_64.c
signal.c
signal.h
smp-tbsync.c
smp.c
softemu8xx.c
suspend.c
swsusp_32.S
swsusp_64.c
swsusp_asm64.S
swsusp.c
sys_ppc32.c [POWERPC] Don't touch PT_DTRACE in exec 2008-03-26 08:44:05 +11:00
syscalls.c
sysfs.c remove __attribute_used__ 2008-01-28 23:21:18 +01:00
systbl_chk.c
systbl_chk.sh
systbl.S
tau_6xx.c
time.c taskstats scaled time cleanup 2008-02-06 10:41:00 -08:00
traps.c [POWERPC] Fix compilation for CONFIG_DEBUGGER=n and CONFIG_KEXEC=y 2008-02-07 11:40:18 +11:00
udbg_16550.c
udbg.c
vdso.c Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/lmb-2.6 2008-02-26 21:08:45 +11:00
vecemu.c
vector.S
vio.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
vmlinux.lds.S all archs: consolidate init and exit sections in vmlinux.lds.h 2008-01-28 23:21:17 +01:00