linux/arch/powerpc/include/asm
Nicholas Piggin c4f3b52ce7 powerpc/64s: Disallow system reset vs system reset reentrancy
In preparation for using a dedicated stack for system reset interrupts,
prevent a nested system reset from recovering, in order to simplify
code that is called in crash/debug path. This allows a system reset
interrupt to just use the base stack pointer.

Keep an in_nmi nesting counter similarly to the in_mce counter. Consider
the interrrupt non-recoverable if it is taken inside another system
reset.

Interrupt nesting could be allowed similarly to MCE, but system reset
is a special case that's not for normal operation, so simplicity wins
until there is requirement for nested system reset interrupts.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2017-04-28 21:02:25 +10:00
..
book3s powerpc/mm: Fix missing page attributes in page table dump 2017-04-27 22:20:27 +10:00
nohash powerpc/mm/nohash: MM_SLICE is only used by book3s 64 2017-03-31 23:09:47 +11:00
8xx_immap.h
Kbuild
accounting.h
agp.h
archrandom.h
asm-compat.h
asm-offsets.h
asm-prototypes.h powerpc: Fix missing CRCs, add more asm-prototypes.h declarations 2017-03-21 22:09:26 +11:00
async_tx.h
atomic.h
backlight.h
barrier.h
bitops.h powerpc: Add more PPC bit conversion macros 2017-04-06 19:58:53 +10:00
bootx.h
btext.h
bug.h
bugs.h
cache.h powerpc: Add new cache geometry aux vectors 2017-02-06 19:46:04 +11:00
cacheflush.h
cell-pmu.h
cell-regs.h
checksum.h powerpc/64: Fix checksum folding in csum_add() 2017-03-04 23:07:17 +11:00
cmpxchg.h
code-patching.h powerpc: Introduce a new helper to obtain function entry points 2017-04-24 19:07:58 +10:00
compat.h
context_tracking.h
copro.h
cpm.h
cpm1.h
cpm2.h
cpu_has_feature.h
cpufeature.h
cpuidle.h powerpc/64s: Idle POWER8 avoid full state loss recovery where possible 2017-04-23 20:32:12 +10:00
cputable.h powerpc/64s: Remove SAO feature from Power9 DD1 2017-04-19 20:48:25 +10:00
cputhreads.h
cputime.h sched/cputime: Remove generic asm headers 2017-02-01 09:14:07 +01:00
current.h
dbdma.h
dbell.h powerpc/powernv: POWER9 support for msgsnd/doorbell IPI 2017-04-13 23:34:34 +10:00
dcr-generic.h
dcr-mmio.h
dcr-native.h
dcr-regs.h
dcr.h
debug.h powerpc: Create asm/debugfs.h and move powerpc_debugfs_root there 2017-04-11 07:46:03 +10:00
debugfs.h powerpc: Create asm/debugfs.h and move powerpc_debugfs_root there 2017-04-11 07:46:03 +10:00
delay.h
device.h
disassemble.h
dma-mapping.h
dma.h
edac.h
eeh.h
eeh_event.h
ehv_pic.h
elf.h powerpc/64: Fix L1D cache shape vector reporting L1I values 2017-03-06 21:51:32 +11:00
emergency-restart.h
emulated_ops.h
epapr_hcalls.h
exception-64e.h
exception-64s.h powerpc/64s: Disallow system reset vs system reset reentrancy 2017-04-28 21:02:25 +10:00
exec.h
fadump.h
fb.h
feature-fixups.h powerpc/64s: Simplify POWER9 DD1 idle workaround code 2017-04-23 20:32:23 +10:00
firmware.h powerpc/pseries: Add hypercall wrappers for hash page table resizing 2017-02-09 21:45:48 +11:00
fixmap.h
floppy.h
fs_pd.h
fsl_85xx_cache_sram.h
fsl_gtm.h
fsl_hcalls.h scripts/spelling.txt: add "partiton" pattern and fix typo instances 2017-02-27 18:43:46 -08:00
fsl_lbc.h
fsl_pamu_stash.h
fsl_pm.h
ftrace.h
futex.h
grackle.h
hardirq.h
head-64.h powerpc/kprobes: Blacklist common exception handlers 2017-04-23 20:32:26 +10:00
heathrow.h
highmem.h
hmi.h
hugetlb.h
hvcall.h powerpc/pseries: Move struct hcall_stats to hvCall_inst.c 2017-03-20 19:02:49 +11:00
hvconsole.h
hvcserver.h
hvsi.h
hw_breakpoint.h
hw_irq.h
hydra.h
i8259.h
ibmebus.h
icswx.h
ide.h
ima.h
immap_cpm2.h
io-defs.h
io-workarounds.h
io.h powerpc/mm: Wire up ioremap_cache() 2017-04-21 21:08:47 +10:00
io_event_irq.h
iommu.h powerpc/vfio_spapr_tce: Add reference counting to iommu_table 2017-03-30 21:42:11 +11:00
ipic.h
irq.h
irq_work.h
irqflags.h
isa-bridge.h
jump_label.h
kdebug.h
kdump.h
kexec.h
keylargo.h
kgdb.h
kmap_types.h
kprobes.h powerpc/kprobes: Add support for KPROBES_ON_FTRACE 2017-04-24 19:07:58 +10:00
kvm_asm.h
kvm_book3s.h
kvm_book3s_32.h
kvm_book3s_64.h powerpc/pseries: Skip using reserved virtual address range 2017-04-01 21:12:27 +11:00
kvm_book3s_asm.h powerpc: Consolidate variants of real-mode MMIOs 2017-04-10 21:43:16 +10:00
kvm_booke.h
kvm_booke_hv_asm.h
kvm_fpu.h
kvm_host.h KVM: PPC: Book3S HV: Outline of KVM-HV HPT resizing implementation 2017-01-31 21:59:56 +11:00
kvm_para.h
kvm_ppc.h powerpc: Consolidate variants of real-mode MMIOs 2017-04-10 21:43:16 +10:00
libata-portmap.h
linkage.h
livepatch.h
local.h
lppaca.h
lv1call.h
machdep.h
macio.h
mc146818rtc.h
mce.h powerpc/book3s: Print task info if we take a machine check in user mode 2017-04-03 16:12:00 +10:00
mediabay.h
mm-arch-hooks.h
mman.h
mmu-8xx.h
mmu-40x.h
mmu-44x.h
mmu-book3e.h powerpc/mm/nohash: MM_SLICE is only used by book3s 64 2017-03-31 23:09:47 +11:00
mmu.h powerpc/mm/hash: Support 68 bit VA 2017-03-31 23:10:00 +11:00
mmu_context.h Merge branch 'topic/ppc-kvm' into next 2017-04-28 20:19:37 +10:00
mmzone.h
module.h modversions: treat symbol CRCs as 32 bit quantities 2017-02-03 08:28:25 -08:00
mpc5xxx.h
mpc6xx.h
mpc52xx.h
mpc52xx_psc.h
mpc85xx.h
mpc5121.h
mpc8260.h
mpic.h
mpic_msgr.h
mpic_timer.h
msi_bitmap.h
nmi.h
nvram.h
ohare.h
opal-api.h Merge branch 'topic/xive' (early part) into next 2017-04-12 22:31:37 +10:00
opal.h Merge branch 'topic/xive' (early part) into next 2017-04-12 22:31:37 +10:00
oprofile_impl.h
paca.h powerpc/64s: Disallow system reset vs system reset reentrancy 2017-04-28 21:02:25 +10:00
page.h powerpc: do not make the entire heap executable 2017-02-22 16:41:29 -08:00
page_32.h
page_64.h powerpc/mm/slice: Move slice_mask struct definition to slice.c 2017-03-31 23:09:56 +11:00
parport.h
pasemi_dma.h
pci-bridge.h
pci.h
percpu.h
perf_event.h
perf_event_fsl_emb.h
perf_event_server.h powerpc/perf: Support to export MMCRA[TEC*] field to userspace 2017-04-19 20:00:22 +10:00
pgalloc.h
pgtable-be-types.h
pgtable-types.h
pgtable.h
plpar_wrappers.h powerpc/pseries: Add hypercall wrappers for hash page table resizing 2017-02-09 21:45:48 +11:00
pmac_feature.h
pmac_low_i2c.h
pmac_pfunc.h
pmc.h
pmi.h
pnv-pci.h drivers/pci/hotplug: Mask PDC interrupt if required 2017-02-15 20:02:43 +11:00
powernv.h powerpc/powernv: Introduce address translation services for Nvlink2 2017-04-04 13:27:26 +10:00
ppc-opcode.h powerpc/powernv: POWER9 support for msgsnd/doorbell IPI 2017-04-13 23:34:34 +10:00
ppc-pci.h
ppc4xx.h
ppc4xx_ocm.h
ppc_asm.h
probes.h
processor.h powerpc/mm: Enable mappings above 128TB 2017-04-01 21:12:29 +11:00
prom.h powerpc: Update to new option-vector-5 format for CAS 2017-03-06 21:44:09 +11:00
ps3.h
ps3av.h
ps3gpu.h
ps3stor.h
pte-common.h
ptrace.h
reg.h powerpc/64s: Fix POWER9 machine check handler from stop state 2017-04-23 20:31:46 +10:00
reg_8xx.h
reg_a2.h
reg_booke.h
reg_fsl_emb.h
rheap.h
rio.h
rtas.h powerpc/pseries: Implement indexed-count hotplug memory add 2017-02-17 17:57:30 +11:00
runlatch.h
scom.h
seccomp.h
sections.h powerpc/kprobes: Blacklist exception handlers 2017-04-23 20:32:25 +10:00
serial.h
setjmp.h
setup.h
sfp-machine.h
shmparam.h
signal.h
smp.h powerpc: Introduce msgsnd/doorbell barrier primitives 2017-04-13 23:34:33 +10:00
smu.h
sparsemem.h powerpc/mm: Fix build break with BOOK3S_64=n and MEMORY_HOTPLUG=y 2017-02-15 19:58:39 +11:00
spinlock.h
spinlock_types.h
spu.h
spu_csa.h
spu_info.h
spu_priv1.h
sstep.h
string.h
swab.h
swiotlb.h
switch_to.h
synch.h
syscall.h
syscalls.h powerpc/tracing: Allow tracing of mmap syscalls 2017-04-12 22:32:43 +10:00
systbl.h powerpc: Wire up statx() syscall 2017-03-16 20:45:53 +11:00
tce.h
termios.h
thread_info.h powerpc: Move THREAD_SHIFT config to Kconfig 2017-03-20 19:02:49 +11:00
time.h
timex.h
tlb.h
tlbflush.h
tm.h
topology.h
trace.h
trace_clock.h
tsi108.h
tsi108_irq.h
tsi108_pci.h
types.h
uaccess.h powerpc/sparse: Constify the address pointer in __get_user_nosleep() 2017-02-02 16:35:21 +11:00
udbg.h
uic.h
unaligned.h
uninorth.h
unistd.h powerpc: Wire up statx() syscall 2017-03-16 20:45:53 +11:00
uprobes.h
user.h
vdso.h
vdso_datapage.h
vga.h
vio.h
word-at-a-time.h
xics.h powerpc: Change the doorbell IPI calling convention 2017-04-13 23:34:33 +10:00
xilinx_intc.h
xilinx_pci.h
xive-regs.h powerpc/xive: Native exploitation of the XIVE interrupt controller 2017-04-10 21:41:34 +10:00
xive.h powerpc/xive: Native exploitation of the XIVE interrupt controller 2017-04-10 21:41:34 +10:00
xmon.h powerpc/xive: Native exploitation of the XIVE interrupt controller 2017-04-10 21:41:34 +10:00
xor.h