OpenCloudOS-Kernel/arch/s390/kernel
Martin Schwidefsky 98587c2d89 s390: simplify disabled_wait
The disabled_wait() function uses its argument as the PSW address when
it stops the CPU with a wait PSW that is disabled for interrupts.
The different callers sometimes use a specific number like 0xdeadbeef
to indicate a specific failure, the early boot code uses 0 and some
other calls sites use __builtin_return_address(0).

At the time a dump is created the current PSW and the registers of a
CPU are written to lowcore to make them avaiable to the dump analysis
tool. For a CPU stopped with disabled_wait the PSW and the registers
do not really make sense together, the PSW address does not point to
the function the registers belong to.

Simplify disabled_wait() by using _THIS_IP_ for the PSW address and
drop the argument to the function.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2019-05-02 13:54:11 +02:00
..
syscalls y2038: add 64-bit time_t syscalls to all 32-bit architectures 2019-02-07 00:13:28 +01:00
vdso32 s390/vdso: add missing FORCE to build targets 2018-10-26 10:19:40 +02:00
vdso64 s390/vdso: add missing FORCE to build targets 2018-10-26 10:19:40 +02:00
.gitignore s390: add various .gitignore files. 2012-05-16 14:42:41 +02:00
Makefile s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
alternative.c s390: add automatic detection of the spectre defense 2018-03-28 08:38:24 +02:00
asm-offsets.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
audit.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
audit.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
base.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
cache.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_audit.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_linux.c s390: use generic UID16 implementation 2019-01-18 09:33:18 +01:00
compat_linux.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_ptrace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_signal.c s390/compat: fix setup_frame32 2018-04-10 07:38:54 +02:00
cpcmd.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
crash_dump.c memblock: memblock_phys_alloc(): don't panic 2019-03-12 10:04:01 -07:00
debug.c s390: no need to check return value of debugfs_create functions 2019-01-28 15:58:55 +01:00
diag.c s390/kernel: introduce .dma sections 2019-04-29 10:47:10 +02:00
dis.c s390: kernel: add SPDX identifiers to the remaining files 2017-11-24 15:37:12 +01:00
dumpstack.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
early.c s390: simplify disabled_wait 2019-05-02 13:54:11 +02:00
early_nobss.c s390: simplify disabled_wait 2019-05-02 13:54:11 +02:00
early_printk.c s390/hibernate: fix error handling when suspend cpu != resume cpu 2018-09-20 13:20:23 +02:00
ebcdic.c s390: ebcdic: convert comments to UTF-8 2018-08-23 18:48:43 -07:00
entry.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
entry.h s390/ftrace: use HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-05-02 13:54:11 +02:00
fpu.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ftrace.c s390/ftrace: use HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-05-02 13:54:11 +02:00
guarded_storage.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2017-11-13 11:47:01 -08:00
head64.S s390/kernel: introduce .dma sections 2019-04-29 10:47:10 +02:00
idle.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ima_arch.c s390/kexec_file: Disable kexec_load when IPLed secure 2019-04-29 10:44:03 +02:00
ipl.c s390: simplify disabled_wait 2019-05-02 13:54:11 +02:00
ipl_vmparm.c s390/ipl: provide uapi header for list directed IPL 2019-04-26 12:34:05 +02:00
irq.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
jump_label.c jump_label: move 'asm goto' support test to Kconfig 2019-01-06 09:46:51 +09:00
kdebugfs.c s390: no need to check return value of debugfs_create functions 2019-01-28 15:58:55 +01:00
kexec_elf.c s390/kexec_file: Create ipl report and pass to next kernel 2019-04-29 10:44:02 +02:00
kexec_image.c s390/kexec_file: Create ipl report and pass to next kernel 2019-04-29 10:44:02 +02:00
kprobes.c s390/kernel: introduce .dma sections 2019-04-29 10:47:10 +02:00
lgr.c s390: kernel: add SPDX identifiers to the remaining files 2017-11-24 15:37:12 +01:00
machine_kexec.c s390: simplify disabled_wait 2019-05-02 13:54:11 +02:00
machine_kexec_file.c s390/sclp: do not use static sccbs 2019-04-29 10:47:10 +02:00
machine_kexec_reloc.c s390/kernel: build a relocatable kernel 2019-04-29 10:47:10 +02:00
mcount.S s390/ftrace: use HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-05-02 13:54:11 +02:00
module.c s390/kasan: dynamic shadow mem allocation for modules 2018-10-09 11:21:23 +02:00
nmi.c s390: simplify disabled_wait 2019-05-02 13:54:11 +02:00
nospec-branch.c s390: Convert IS_ENABLED uses to __is_defined 2019-04-11 13:36:53 +02:00
nospec-sysfs.c s390: Convert IS_ENABLED uses to __is_defined 2019-04-11 13:36:53 +02:00
os_info.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf_cpum_cf.c s390/cpum_cf: Add support for CPU-MF SVN 6 2019-03-29 07:23:50 +01:00
perf_cpum_cf_common.c s390/cpum_cf: move common functions into a separate file 2019-02-22 09:19:55 +01:00
perf_cpum_cf_diag.c s390/cpum_cf_diag: Add support for CPU-MF SVN 6 2019-04-23 16:30:06 +02:00
perf_cpum_cf_events.c s390/cpum_cf: Add support for CPU-MF SVN 6 2019-03-29 07:23:50 +01:00
perf_cpum_sf.c perf/aux: Make perf_event accessible to setup_aux() 2019-02-06 10:00:39 -03:00
perf_event.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
perf_regs.c s390/perf: fix gcc 8 array-bounds warning 2018-07-02 11:24:54 +02:00
pgm_check.S s390/kernel: convert SYSCALL and PGM_CHECK handlers to .quad 2019-04-29 10:47:10 +02:00
process.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
processor.c s390: report new CPU capabilities 2019-04-25 15:34:10 +02:00
ptrace.c s390/gs: add compat regset for the guarded storage broadcast control block 2017-11-28 17:33:15 +01:00
reipl.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
relocate_kernel.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
runtime_instr.c s390/runtime_instrumentation: re-add signum system call parameter 2018-02-05 07:34:50 +01:00
setup.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
signal.c s390: wire up rseq system call 2018-07-04 08:35:18 +02:00
smp.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
stacktrace.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
sthyi.c s390/sthyi: Fix machine name validity indication 2018-10-15 12:17:00 +02:00
suspend.c s390: unify linker symbols usage 2018-02-27 08:05:23 +01:00
swsusp.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
sys_s390.c s390: autogenerate compat syscall wrappers 2019-01-18 09:33:19 +01:00
sysinfo.c s390: no need to check return value of debugfs_create functions 2019-01-28 15:58:55 +01:00
time.c s390/time: Remove read_boot_clock64() 2018-07-20 00:02:41 +02:00
topology.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
trace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
traps.c s390/kernel: introduce .dma sections 2019-04-29 10:47:10 +02:00
unwind_bc.c s390/ftrace: use HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-05-02 13:54:11 +02:00
uprobes.c s390/uprobes: implement arch_uretprobe_is_alive() 2018-04-23 07:57:16 +02:00
vdso.c s390: don't build vdso32 with clang 2019-04-11 13:36:49 +02:00
vmlinux.lds.S s390/kernel: build a relocatable kernel 2019-04-29 10:47:10 +02:00
vtime.c s390/vtime: steal time exponential moving average 2019-03-06 14:59:50 +01:00