kernel-ark/arch/sparc/include/asm
Ingo Molnar 3f0116c323 compiler/gcc4: Add quirk for 'asm goto' miscompilation bug
Fengguang Wu, Oleg Nesterov and Peter Zijlstra tracked down
a kernel crash to a GCC bug: GCC miscompiles certain 'asm goto'
constructs, as outlined here:

  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670

Implement a workaround suggested by Jakub Jelinek.

Reported-and-tested-by: Fengguang Wu <fengguang.wu@intel.com>
Reported-by: Oleg Nesterov <oleg@redhat.com>
Reported-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Suggested-by: Jakub Jelinek <jakub@redhat.com>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: <stable@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2013-10-11 07:39:14 +02:00
..
agp.h
apb.h
asm-offsets.h
asm.h
asmmacro.h sparc32: add support for run-time patching of leon/sun single instructions 2012-05-27 23:52:43 -07:00
atomic_32.h
atomic_64.h sparc: Support atomic64_dec_if_positive properly. 2012-11-09 19:37:59 -08:00
atomic.h
auxio_32.h
auxio_64.h
auxio.h
backoff.h sparc64: Improvde documentation and readability of atomic backoff code. 2012-10-28 13:04:47 -07:00
barrier_32.h
barrier_64.h
barrier.h
bbc.h
bitext.h
bitops_32.h
bitops_64.h
bitops.h
btext.h
bug.h
bugs.h
cache.h
cacheflush_32.h
cacheflush_64.h sparc32: use flushi when run-time patching in per_cpu_patch 2012-05-20 13:33:36 -07:00
cacheflush.h sparc32: use flushi when run-time patching in per_cpu_patch 2012-05-20 13:33:36 -07:00
cachetlb_32.h
chafsr.h
checksum_32.h
checksum_64.h
checksum.h
chmctrl.h
clock.h
cmpxchg_32.h
cmpxchg_64.h sparc64: Provide cmpxchg64() 2013-03-20 11:06:55 -07:00
cmpxchg.h
compat_signal.h sparc: switch to generic sigaltstack 2013-02-03 18:16:17 -05:00
compat.h sparc64: Make montmul/montsqr/mpmul usable in 32-bit threads. 2012-10-26 15:18:37 -07:00
contregs.h
cpu_type.h
cpudata_32.h
cpudata_64.h
cpudata.h
current.h
dcr.h
dcu.h
delay_32.h
delay_64.h
delay.h
device.h
dma-mapping.h sparc: dma-mapping: support debug_dma_mapping_error 2012-11-17 13:20:38 +01:00
dma.h
ebus_dma.h
ecc.h
eeprom.h
elf_32.h default SET_PERSONALITY() in linux/elf.h 2013-02-26 02:46:08 -05:00
elf_64.h sparc64: Add detection for features new in SPARC-T4. 2012-08-18 23:02:36 -07:00
elf.h
estate.h
fb.h
fbio.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
fhc.h
floppy_32.h
floppy_64.h sparc: remove deprecated IRQF_DISABLED 2013-10-02 20:02:35 -04:00
floppy.h
fpumacro.h
ftrace.h
futex_32.h
futex_64.h
futex.h
gpio.h
hardirq_32.h
hardirq_64.h
hardirq.h
head_32.h sparc: Consistently use 'wr' and 'rd' instructions for ASRs. 2013-04-06 17:51:48 -04:00
head_64.h
head.h
hibernate.h sparc64: Hibernation support 2013-03-20 11:06:54 -07:00
highmem.h sparc32: move kmap_init() to highmem.c 2012-07-26 16:46:17 -07:00
hugetlb.h mm/hugetlb: add more arch-defined huge_pte functions 2013-04-29 15:54:33 -07:00
hvtramp.h
hw_irq.h
hypervisor.h sparc64: Add hypervisor interfaces for SPARC-T4 perf counter access. 2012-08-18 23:03:53 -07:00
ide.h
idprom.h
intr_queue.h
io_32.h
io_64.h
io-unit.h
io.h
ioctls.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
iommu_32.h
iommu_64.h
iommu.h
irq_32.h
irq_64.h
irq.h
irqflags_32.h
irqflags_64.h
irqflags.h
jump_label.h compiler/gcc4: Add quirk for 'asm goto' miscompilation bug 2013-10-11 07:39:14 +02:00
Kbuild sparc: Switch to asm-generic/linkage.h 2013-06-19 02:08:20 -07:00
kdebug_32.h
kdebug_64.h
kdebug.h
kgdb.h
kmap_types.h
kprobes.h
ldc.h
leon_amba.h sparc32, leon: Remove separate "ticker" timer for SMP 2013-06-19 02:10:29 -07:00
leon_pci.h sparc32,leon: add support for PCI busn resource for GRPCI2 2013-03-20 11:06:53 -07:00
leon.h sparc32, leon: Require separate snoop tags set to regard snooping to be enabled 2013-07-10 13:35:52 -07:00
lsu.h
machines.h
mbus.h
mc146818rtc_32.h
mc146818rtc_64.h
mc146818rtc.h
mdesc.h sparc64: Probe cpu page size support more portably. 2012-09-06 19:01:25 -07:00
memctrl.h
mman.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
mmu_32.h
mmu_64.h sparc64: Support transparent huge pages. 2012-10-09 16:23:06 +09:00
mmu_context_32.h sparc32: centralize all mmu context handling in srmmu.c 2012-07-26 16:46:16 -07:00
mmu_context_64.h sparc64: Do not save/restore interrupts in get_new_mmu_context() 2013-04-08 22:50:47 -04:00
mmu_context.h
mmu.h
mmzone.h
msi.h
mxcc.h
nmi.h
ns87303.h
obio.h
openprom.h
oplib_32.h sparc: fix format string argument for prom_printf() 2012-10-02 23:20:34 -04:00
oplib_64.h sparc: fix format string argument for prom_printf() 2012-10-02 23:20:34 -04:00
oplib.h
page_32.h sparc32: drop sparc_unmapped_base 2012-07-26 16:46:16 -07:00
page_64.h sparc64: Fix tsb_grow() in atomic context. 2013-02-20 09:46:08 -08:00
page.h
parport.h SPARC: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
pbm.h
pci_32.h
pci_64.h
pci.h
pcic.h
pcr.h sparc64: Add PCR ops for SPARC-T4. 2012-08-18 23:26:19 -07:00
percpu_32.h
percpu_64.h
percpu.h
perf_event.h
pgalloc_32.h sparc32: drop quicklist 2012-07-26 16:46:16 -07:00
pgalloc_64.h sparc64: Support transparent huge pages. 2012-10-09 16:23:06 +09:00
pgalloc.h
pgtable_32.h consolidate io_remap_pfn_range definitions 2013-06-29 12:46:35 +04:00
pgtable_64.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-07-04 10:29:23 -07:00
pgtable.h
pgtsrmmu.h sparc32: srmmu_probe now knows about leon too 2012-05-27 23:52:51 -07:00
pil.h
processor_32.h sparc idle: rename pm_idle to sparc_idle 2013-02-17 23:36:56 -05:00
processor_64.h sparc64: Kill __ARCH_WANT_UNLOCKED_CTXSW 2013-03-20 12:09:01 -07:00
processor.h
prom.h of/address: sparc: Declare of_iomap as an extern function for sparc again 2012-11-23 22:01:15 +00:00
psr.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
ptrace.h Merge commit '517ffce4e1a03aea979fe3a18a3dd1761a24fafb' into arch-sparc 2012-11-16 20:49:06 -05:00
ross.h
rwsem.h
sbi.h
scatterlist.h
scratchpad.h
seccomp.h
sections.h sparc32: add support for run-time patching of leon/sun single instructions 2012-05-27 23:52:43 -07:00
setup.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
sfafsr.h
sfp-machine_32.h
sfp-machine_64.h
sfp-machine.h
shmparam_32.h
shmparam_64.h
shmparam.h
sigcontext.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
siginfo.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
signal.h consolidate kernel-side struct sigaction declarations 2013-02-03 15:09:22 -05:00
smp_32.h sparc:cleanup unused code in smp_32.h 2013-03-31 19:29:12 -04:00
smp_64.h sparc64: Add global PMU register dumping via sysrq. 2012-10-16 09:34:01 -07:00
smp.h
sparsemem.h
spinlock_32.h
spinlock_64.h
spinlock_types.h
spinlock.h
spitfire.h sparc64: correctly recognize SPARC64-X chips 2013-03-11 05:06:27 -07:00
stacktrace.h
starfire.h
string_32.h
string_64.h
string.h
sunbpp.h
swift.h
switch_to_32.h
switch_to_64.h sparc64: cleanup: Rename ret_from_syscall to ret_from_fork 2013-07-31 19:10:04 -07:00
switch_to.h
syscall.h
syscalls.h sparc32: switch to generic sys_execve() 2012-10-16 19:03:53 -04:00
termbits.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
termios.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
thread_info_32.h arch: Consolidate tsk_is_polling() 2013-04-08 17:39:22 +02:00
thread_info_64.h arch: Consolidate tsk_is_polling() 2013-04-08 17:39:22 +02:00
thread_info.h
timer_32.h
timer_64.h SPARC: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
timer.h
timex_32.h
timex_64.h
timex.h
tlb_32.h
tlb_64.h
tlb.h
tlbflush_32.h
tlbflush_64.h sparc64: Fix race in TLB batch processing. 2013-04-19 17:26:26 -04:00
tlbflush.h
topology_32.h
topology_64.h
topology.h
trap_block.h
traps.h UAPI: (Scripted) Disintegrate arch/sparc/include/asm 2012-10-09 09:47:43 +01:00
tsb.h sparc64: Fix huge PMD to PTE translation for sun4u in TLB miss handler. 2013-02-20 13:34:41 -08:00
tsunami.h
ttable.h sparc64: Make montmul/montsqr/mpmul usable in 32-bit threads. 2012-10-26 15:18:37 -07:00
turbosparc.h
uaccess_32.h sparc: use the new generic strnlen_user() function 2012-05-26 11:33:54 -07:00
uaccess_64.h sparc64: clear syscall_noerror on the entry to syscall, not on the exit 2012-10-14 19:26:52 -04:00
uaccess.h sparc: Fix user_addr_max() definition. 2012-05-24 13:41:58 -07:00
unaligned.h
unistd.h consolidate cond_syscall and SYSCALL_ALIAS declarations 2013-03-03 22:55:19 -05:00
upa.h
user.h
vaddrs.h sparc32: drop fixmap.h 2012-07-26 16:46:16 -07:00
vga.h
viking.h
vio.h
visasm.h
winmacro.h
xor_32.h
xor_64.h
xor.h