2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-27 14:43:58 +08:00
linux-next/arch/s390/include/asm
Heiko Carstens 38ea1f358b s390/32bit: fix cmpxchg64
Fix broken inline assembly contraints for cmpxchg64 on 32bit.

Fixes this crash:

specification exception: 0006 [#1] SMP
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.13.0 #4
task: 005a16c8 ti: 00592000 task.ti: 00592000
Krnl PSW : 070ce000 8029abd6 (lockref_get+0x3e/0x9c)
...
Krnl Code: 8029abcc: a71a0001           ahi     %r1,1
           8029abd0: 1852               lr      %r5,%r2
          #8029abd2: bb40f064           cds     %r4,%r0,100(%r15)
          >8029abd6: 1943               cr      %r4,%r3
           8029abd8: 1815               lr      %r1,%r5
Call Trace:
([<0000000078e01870>] 0x78e01870)
 [<000000000021105a>] sysfs_mount+0xd2/0x1c8
 [<00000000001b551e>] mount_fs+0x3a/0x134
 [<00000000001ce768>] vfs_kern_mount+0x44/0x11c
 [<00000000001ce864>] kern_mount_data+0x24/0x3c
 [<00000000005cc4b8>] sysfs_init+0x74/0xd4
 [<00000000005cb5b4>] mnt_init+0xe0/0x1fc
 [<00000000005cb16a>] vfs_caches_init+0xb6/0x14c
 [<00000000005be794>] start_kernel+0x318/0x33c
 [<000000000010001c>] _stext+0x1c/0x80

Reported-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2014-01-22 14:02:15 +01:00
..
airq.h s390/airq: introduce adapter interrupt vector helper 2013-08-22 12:20:02 +02:00
appldata.h s390/appldata: change return value of appldata_asm 2012-09-26 15:45:15 +02:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
atomic.h s390/atomic: use 'unsigned int' instead of 'unsigned long' for atomic_*_mask() 2013-10-24 17:17:02 +02:00
barrier.h arch: Introduce smp_load_acquire(), smp_store_release() 2014-01-12 10:37:17 +01:00
bitops.h s390/bitops: rename find_first_bit_left() to find_first_bit_inv() 2013-10-24 17:16:56 +02:00
bug.h panic: Allow warnings to set different taint flags 2010-05-19 08:36:48 +01:00
bugs.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
cache.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
cacheflush.h module: undo module RONX protection correctly. 2011-05-19 16:55:26 +09:30
ccwdev.h s390/cio: ccw_device_force_console don't use static variable 2013-04-17 14:07:31 +02:00
ccwgroup.h s390/ccwgroup: allow drivers to call set_{on,off}line 2012-11-23 11:14:35 +01:00
checksum.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
chpid.h UAPI Disintegration 2012-10-09 2012-10-09 14:18:10 +02:00
cio.h s390/hibernate: add early resume function 2013-08-30 08:57:15 +02:00
clp.h s390/pci: cleanup clp page allocation 2013-02-14 15:55:16 +01:00
cmb.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
cmpxchg.h s390/32bit: fix cmpxchg64 2014-01-22 14:02:15 +01:00
compat.h s390/compat: fix PSW32_USER_BITS definition 2014-01-13 16:50:21 +01:00
cpcmd.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
cpu_mf.h s390/cpum_sf: Add raw data sampling to support the diagnostic-sampling function 2013-12-16 14:38:00 +01:00
cpu.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
cputime.h vtime: Describe overriden functions in dedicated arch headers 2013-08-14 17:14:53 +02:00
crw.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
css_chars.h s390/qdio: bridgeport support - CHSC part 2014-01-14 15:16:09 +01:00
ctl_reg.h s390/sclp: Move early code from sclp_cmd.c to sclp_early.c 2013-11-15 14:08:41 +01:00
current.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
debug.h s390/s390dbf: add debug_level_enabled() function 2013-10-24 17:16:53 +02:00
delay.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device.h
diag.h [S390] replace diag10() with diag10_range() function 2011-05-10 17:13:43 +02:00
dis.h s390/kprobes: allow kprobes only on known instructions 2013-10-24 17:16:50 +02:00
div64.h
dma-mapping.h s390/dma: remove gratuitous brackets 2013-06-26 21:10:26 +02:00
dma.h s390/pci: define isa_dma_bridge_buggy 2013-01-08 10:57:09 +01:00
eadm.h s390/scm_block: do not hide eadm subchannel dependency 2013-11-15 14:08:42 +01:00
ebcdic.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
elf.h s390: system call path micro optimization 2013-04-26 09:07:05 +02:00
emergency-restart.h
etr.h s390/etr,stp: use -EOPNOTSUPP instead of -ENOSYS 2012-09-26 15:45:14 +02:00
exec.h Disintegrate asm/system.h for S390 2012-03-28 18:30:02 +01:00
extmem.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
facility.h s390/facility: decompose test_facility() 2013-06-26 21:10:25 +02:00
fb.h
fcx.h s390/cio: fix error-prone defines 2013-10-24 17:17:04 +02:00
ftrace.h s390/ftrace: fix mcount adjustment 2013-05-15 13:09:09 +02:00
futex.h s390/uaccess: remove pointless access_ok() checks 2013-02-28 09:37:09 +01:00
hardirq.h hardirq: Make hardirq bits generic 2013-11-13 20:21:46 +01:00
hugetlb.h s390/mm: cleanup page table definitions 2013-08-22 12:20:06 +02:00
hw_irq.h s390: convert interrupt handling to use generic hardirq 2013-08-22 12:20:04 +02:00
idals.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
io.h s390: remove virt_to_phys implementation 2013-06-26 21:10:02 +02:00
ipl.h s390: Remove unused declaration of zfcpdump_prefix_array[] 2013-10-24 17:17:05 +02:00
irq_regs.h
irq.h s390/irq: rework irq subclass handling 2013-09-04 17:19:13 +02:00
irqflags.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
isc.h s390/pci: PCI adapter interrupts for MSI/MSI-X 2012-11-30 17:47:21 +01:00
itcw.h UAPI: Alter the S390 asm include guards to be recognisable by the UAPI splitter 2011-12-13 09:26:45 +00:00
jump_label.h compiler/gcc4: Add quirk for 'asm goto' miscompilation bug 2013-10-11 07:39:14 +02:00
Kbuild sched, arch: Create asm/preempt.h 2013-09-25 14:07:50 +02:00
kdebug.h [S390] cleanup trap handling 2011-12-27 11:27:12 +01:00
kexec.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
kmap_types.h s390/headers: remove #ifdef __KERNEL__ from not exported headers 2012-05-24 10:10:05 +02:00
kprobes.h s390/kprobes: add support for pc-relative long displacement instructions 2013-09-11 15:58:52 -07:00
kvm_host.h KVM: s390: Get rid of KVM_HPAGE defines 2013-10-14 10:12:13 +03:00
kvm_para.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
linkage.h [S390] fix s390 assembler code alignments 2011-07-24 10:48:21 +02:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
local.h
lowcore.h s390: add support for transactional memory 2012-09-26 15:45:02 +02:00
mathemu.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
mman.h s390/mm: Fix crst upgrade of mmap with MAP_FIXED 2013-02-14 15:55:22 +01:00
mmu_context.h s390/uaccess: always run the kernel in home space 2013-10-24 17:16:57 +02:00
mmu.h KVM: s390: allow sie enablement for multi-threaded programs 2013-07-29 09:03:09 +02:00
module.h Make most arch asm/module.h files use asm-generic/module.h 2012-09-28 14:31:03 +09:30
mutex.h mutex: replace CONFIG_HAVE_ARCH_MUTEX_CPU_RELAX with simple ifdef 2013-09-28 12:46:21 +02:00
nmi.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
os_info.h s390/kernel: Remove OS info init function call and diag 308 for kdump 2012-05-23 17:06:50 +02:00
page.h s390/mm: optimize copy_page 2013-11-20 09:04:55 +01:00
pci_clp.h s390/pci: CLP interface 2012-11-30 15:40:47 +01:00
pci_debug.h s390/pci: remove CONFIG_PCI_DEBUG dependancy 2013-10-24 17:17:16 +02:00
pci_dma.h s390/pci: DMA support 2012-11-30 17:47:23 +01:00
pci_insn.h s390/pci: cleanup function information block 2013-10-24 17:17:17 +02:00
pci_io.h s390/pci: cleanup function names 2013-08-22 12:20:03 +02:00
pci.h s390/pci: prevent inadvertently triggered bus scans 2013-12-16 14:37:54 +01:00
percpu.h s390/percpu: remove this_cpu_xor() implementation 2013-10-31 09:53:58 +01:00
perf_event.h s390/cpum_sf: Add flag to process full SDBs only 2013-12-16 14:38:01 +01:00
pgalloc.h s390/kvm: Provide function for setting the guest storage key 2013-06-26 21:10:04 +02:00
pgtable.h s390/mm,kvm: fix software dirty bits vs. kvm for old machines 2013-10-15 13:47:57 +02:00
processor.h s390/mm,tlb: correct tlb flush on page table upgrade 2013-11-04 13:51:47 +01:00
ptrace.h s390/uaccess: always run the kernel in home space 2013-10-24 17:16:57 +02:00
qdio.h s390: Fix misspellings using 'codespell' tool 2014-01-16 16:40:13 +01:00
reset.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
runtime_instr.h s390: add support for runtime instrumentation 2012-09-26 15:45:02 +02:00
rwsem.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
scatterlist.h [S390] set ARCH_HAS_SG_CHAIN for s390 2010-10-25 16:10:15 +02:00
schid.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
sclp.h s390/sclp_early: Add function to detect sclp console capabilities 2013-12-16 14:37:49 +01:00
scsw.h s390: add eadm related structures 2012-09-26 15:44:57 +02:00
seccomp.h [S390] secure computing arch backend 2009-06-12 10:27:31 +02:00
sections.h
segment.h
serial.h s390: convert interrupt handling to use generic hardirq 2013-08-22 12:20:04 +02:00
setup.h s390/sclp: Determine HSA size dynamically for zfcpdump 2013-11-15 14:08:40 +01:00
sfp-machine.h
sfp-util.h s390/headers: replace __s390x__ with CONFIG_64BIT where possible 2012-05-24 10:10:10 +02:00
shmparam.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
signal.h s390: switch to generic old sigaction() 2013-02-03 18:16:14 -05:00
sigp.h KVM: s390: Fix sigp sense handling. 2012-07-03 14:55:37 -03:00
smp.h s390/smp: improve setup of possible cpu mask 2013-12-18 17:35:18 +01:00
sparsemem.h s390/mm: remove MAX_PHYSADDR_BITS define 2012-08-08 07:32:55 -07:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spinlock.h s390: enable ARCH_USE_CMPXCHG_LOCKREF 2013-09-28 12:46:29 +02:00
string.h s390/string: provide asm lib functions for memcpy and memcmp 2012-09-26 15:44:50 +02:00
switch_to.h s390: fix save and restore of the floating-point-control register 2013-10-24 17:17:11 +02:00
syscall.h s390: system call path micro optimization 2013-04-26 09:07:05 +02:00
sysinfo.h s390/sysinfo,stsi: change return code handling 2012-09-26 15:45:12 +02:00
termios.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
thread_info.h preempt: Make PREEMPT_ACTIVE generic 2013-11-13 20:21:47 +01:00
timex.h s390/time: fix get_tod_clock_ext inline assembly 2013-10-31 09:52:48 +01:00
tlb.h s390/mm: introduce ptep_flush_lazy helper 2013-08-22 12:20:09 +02:00
tlbflush.h s390/mm: introduce ptep_flush_lazy helper 2013-08-22 12:20:09 +02:00
topology.h s390/topology: cleanup topology code 2012-11-23 11:14:31 +01:00
types.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
uaccess.h s390/uaccess: always run the kernel in home space 2013-10-24 17:16:57 +02:00
unaligned.h
unistd.h consolidate cond_syscall and SYSCALL_ALIAS declarations 2013-03-03 22:55:19 -05:00
user.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
vdso.h s390/time,vdso: convert to the new update_vsyscall interface 2013-11-25 09:15:39 +01:00
vga.h vga: compile fix, disable vga for s390 2012-11-30 17:47:28 +01:00
vtime.h vtime: Describe overriden functions in dedicated arch headers 2013-08-14 17:14:53 +02:00
vtimer.h s390/vtimer: rework virtual timer interface 2012-07-20 11:15:08 +02:00
xor.h