linux/arch/sh/kernel
Dmitry Safonov 2deebe4d56 sh: add loglvl to printk_address()
Currently, the log-level of show_stack() depends on a platform
realization.  It creates situations where the headers are printed with
lower log level or higher than the stacktrace (depending on a platform or
user).

Furthermore, it forces the logic decision from user to an architecture
side.  In result, some users as sysrq/kdb/etc are doing tricks with
temporary rising console_loglevel while printing their messages.  And in
result it not only may print unwanted messages from other CPUs, but also
omit printing at all in the unlucky case where the printk() was deferred.

Introducing log-level parameter and KERN_UNSUPPRESSED [1] seems an easier
approach than introducing more printk buffers.  Also, it will consolidate
printings with headers.

Add log level argument to printk_address() as a preparation to introduce
show_stack_loglvl().

As a good side-effect show_fault_oops() now prints the address with
KERN_EMREG as the rest of output, making sure there won't be situation
where "PC: " is printed without actual address.

[1]: https://lore.kernel.org/lkml/20190528002412.1625-1-dima@arista.com/T/#u

Signed-off-by: Dmitry Safonov <dima@arista.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Rich Felker <dalias@libc.org>
Link: http://lkml.kernel.org/r/20200418201944.482088-32-dima@arista.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-06-09 09:39:12 -07:00
..
cpu Fix for arch/sh build regression with newer binutils, removal of SH5, 2020-06-06 15:22:01 -07:00
syscalls vfs: add faccessat2 syscall 2020-05-14 16:44:25 +02:00
vsyscall .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
asm-offsets.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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
debugtraps.S sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
disassemble.c sh: kernel: disassemble: Mark expected switch fall-throughs 2019-08-11 16:15:16 -05:00
dma-coherent.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
dumpstack.c sh: add loglvl to printk_address() 2020-06-09 09:39:12 -07:00
dwarf.c It appears that the zero-day bot did find a bug in my sh build. 2019-01-05 14:08:00 -08:00
entry-common.S sched/rt, sh: Use CONFIG_PREEMPTION 2019-12-08 14:37:35 +01:00
ftrace.c sh/function_graph: Simplify with function_graph_enter() 2018-11-27 20:31:39 -05:00
head_32.S sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
hw_breakpoint.c sh: kernel: hw_breakpoint: Fix missing break in switch statement 2019-08-11 16:15:16 -05:00
idle.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
io_trapped.c sh: add support for folded p4d page tables 2020-06-04 19:06:21 -07:00
io.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
iomap.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
ioport.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
irq_32.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
irq.c softirq/sh: Use nmi_count() on /proc/interrupts print out 2018-05-14 11:25:27 +02:00
kdebugfs.c sh: no need to check return value of debugfs_create functions 2019-06-03 15:39:40 +02:00
kgdb.c sh: kgdb: Mark expected switch fall-throughs 2019-12-10 16:11:42 -06:00
kprobes.c arch/sh: Check for kprobe trap number before trying to handle a kprobe trap 2019-06-26 19:11:13 +09:00
machine_kexec.c memblock: drop __memblock_alloc_base() 2019-03-12 10:04:01 -07:00
machvec.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
Makefile sh: remove sh5 support 2020-06-01 14:48:52 -04:00
module.c sh: remove sh5 support 2020-06-01 14:48:52 -04:00
nmi_debug.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
perf_callchain.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
perf_event.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
process_32.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
process.c sh: remove sh5 support 2020-06-01 14:48:52 -04:00
ptrace_32.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
ptrace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
reboot.c sh: remove sh5 support 2020-06-01 14:48:52 -04:00
relocate_kernel.S sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
return_address.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
setup.c arch/sh/setup: Drop dummy_con initialization 2020-01-14 15:29:18 +01:00
sh_bios.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
sh_ksyms_32.c sh: Add missing DECLARE_EXPORT() for __ashiftrt_r4_xx 2020-06-01 14:48:49 -04:00
signal_32.c signal: Remove task parameter from force_sig 2019-05-27 09:36:28 -05:00
smp.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
stacktrace.c sh/stacktrace: Remove the pointless ULONG_MAX marker 2019-04-14 19:58:28 +02:00
swsusp.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
sys_sh32.c mm: add ksys_fadvise64_64() helper; remove in-kernel call to sys_fadvise64_64() 2018-04-02 20:16:10 +02:00
sys_sh.c mm: add ksys_mmap_pgoff() helper; remove in-kernel calls to sys_mmap_pgoff() 2018-04-02 20:16:11 +02:00
syscalls_32.S sh: remove nargs from __SYSCALL 2019-03-05 21:07:13 -08:00
time.c sh: add the sh_ prefix to early platform symbols 2019-10-07 13:50:48 +02:00
topology.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
traps_32.c signal: Remove the task parameter from force_sig_fault 2019-05-29 09:31:43 -05:00
traps.c sh: add loglvl to dump_mem() 2020-06-09 09:39:12 -07:00
unwinder.c sh: kernel: convert to SPDX identifiers 2018-12-28 12:11:45 -08:00
vmlinux.lds.S sh: remove sh5 support 2020-06-01 14:48:52 -04:00