OpenCloudOS-Kernel/arch/blackfin/kernel
Chris Metcalf 6727ad9e20 nmi_backtrace: generate one-line reports for idle cpus
When doing an nmi backtrace of many cores, most of which are idle, the
output is a little overwhelming and very uninformative.  Suppress
messages for cpus that are idling when they are interrupted and just
emit one line, "NMI backtrace for N skipped: idling at pc 0xNNN".

We do this by grouping all the cpuidle code together into a new
.cpuidle.text section, and then checking the address of the interrupted
PC to see if it lies within that section.

This commit suitably tags x86 and tile idle routines, and only adds in
the minimal framework for other architectures.

Link: http://lkml.kernel.org/r/1472487169-14923-5-git-send-email-cmetcalf@mellanox.com
Signed-off-by: Chris Metcalf <cmetcalf@mellanox.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Daniel Thompson <daniel.thompson@linaro.org> [arm]
Tested-by: Petr Mladek <pmladek@suse.com>
Cc: Aaron Tomlin <atomlin@redhat.com>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-10-07 18:46:30 -07:00
..
cplb-mpu blackfin: cplb-mpu: fix page mask table overflow 2012-03-21 11:00:06 +08:00
cplb-nompu bfin cache: dcplb map: add 16M dcplb map for BF60x 2013-05-09 18:22:45 +08:00
.gitignore Blackfin: ignore generated vmlinux.lds 2009-05-27 00:27:03 -04:00
Makefile blackfin: adi gpio driver and pinctrl driver support 2013-11-15 17:33:42 +08:00
asm-offsets.c blackfin: Autogenerate offsets in struct thread_info 2015-04-12 20:58:24 +02:00
bfin_dma.c bfin-dma: only use MDMA3 on bf609 2012-07-24 13:39:48 +08:00
bfin_gpio.c blackfin: gpio: switch to gpiochip_add_data() 2016-02-19 09:51:42 +01:00
bfin_ksyms.c locking/atomic, arch/blackfin: Implement atomic_fetch_{add,sub,and,or,xor}() 2016-06-16 10:48:23 +02:00
cplbinfo.c blackfin updates for Linux 3.10 2013-05-10 07:21:16 -07:00
debug-mmrs.c gpio: Include linux/gpio.h instead of asm/gpio.h 2016-02-16 00:20:03 +01:00
dma-mapping.c dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
dumpstack.c dump_stack: consolidate dump_stack() implementations and unify their behaviors 2013-04-30 17:04:02 -07:00
early_printk.c early_printk: consolidate random copies of identical code 2013-04-29 18:28:13 -07:00
entry.S bfin: switch to generic vfork, get rid of pointless wrappers 2012-11-28 23:43:41 -05:00
exception.c Blackfin: split kernel/traps.c 2010-05-21 09:40:17 -04:00
fixed_code.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
flat.c Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
ftrace-entry.S ftrace: Remove CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST from config 2016-08-24 12:15:13 +02:00
ftrace.c ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
gptimers.c blackfin: bf60x: fix compiling warning 2012-05-21 14:54:26 +08:00
ipipe.c Disintegrate asm/system.h for Blackfin [ver #2] 2012-03-21 11:00:08 +08:00
irqchip.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
kgdb.c arch: blackfin: kernel: kgdb: Remove unused function 2015-04-23 22:56:54 +08:00
kgdb_test.c Disintegrate asm/system.h for Blackfin [ver #2] 2012-03-21 11:00:08 +08:00
module.c modules: make arch's use default loader hooks 2011-07-24 22:06:04 +09:30
nmi.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
perf_event.c blackfin/perf: Convert hotplug notifier to state machine 2016-07-14 09:34:36 +02:00
process.c bfin: Fix typo in arch_cpu_idle() 2013-04-10 12:38:48 +02:00
pseudodbg.c Blackfin: show the whole accumulator in the pseudo DBG insn 2010-05-22 14:19:06 -04:00
ptrace.c blackfin/ptrace: call find_vma with the mmap_sem held 2014-06-06 16:08:16 -07:00
reboot.c Blackfin: fix wrong place disabled irq 2012-10-08 14:36:30 +08:00
setup.c arch: blackfin: kernel: setup.c: Cleaning up missing null-terminate in conjunction with strncpy 2015-04-23 21:34:25 +08:00
shadow_console.c blackfin: add bf60x to current framework 2012-05-21 14:54:12 +08:00
signal.c frv: Remove signal translation and exec_domain 2015-04-12 20:58:24 +02:00
stacktrace.c Blackfin: add preliminary support for STACKTRACE 2009-06-13 07:20:14 -04:00
sys_bfin.c blackfin: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:01 -04:00
time-ts.c blackfin/time-ts: Migrate to new 'set-state' interface 2015-08-10 11:40:59 +02:00
time.c time: convert arch_gettimeoffset to a pointer 2012-12-24 09:36:07 -07:00
trace.c vfs: add file_path() helper 2015-06-23 18:00:05 -04:00
traps.c blackfin: Autogenerate offsets in struct thread_info 2015-04-12 20:58:24 +02:00
vmlinux.lds.S nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00