linux/arch/sh/kernel
Alexander Potapenko be7635e728 arch, ftrace: for KASAN put hard/soft IRQ entries into separate sections
KASAN needs to know whether the allocation happens in an IRQ handler.
This lets us strip everything below the IRQ entry point to reduce the
number of unique stack traces needed to be stored.

Move the definition of __irq_entry to <linux/interrupt.h> so that the
users don't need to pull in <linux/ftrace.h>.  Also introduce the
__softirq_entry macro which is similar to __irq_entry, but puts the
corresponding functions to the .softirqentry.text section.

Signed-off-by: Alexander Potapenko <glider@google.com>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Cc: Christoph Lameter <cl@linux.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: David Rientjes <rientjes@google.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Andrey Konovalov <adech.fo@gmail.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com>
Cc: Konstantin Serebryany <kcc@google.com>
Cc: Dmitry Chernenkov <dmitryc@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-03-25 16:37:42 -07:00
..
cpu sh: provide unified syscall trap compatible with all SH models 2016-03-17 19:46:06 +00:00
vsyscall arm64,ia64,ppc,s390,sh,tile,um,x86,mm: remove default gate area 2014-08-08 15:57:27 -07:00
.gitignore
Makefile sh: remove arch-specific localtimer and use generic one 2016-03-17 19:46:09 +00:00
asm-offsets.c sh: Remove signal translation and exec_domain 2015-04-12 20:58:25 +02:00
crash_dump.c crash_dump: export is_kdump_kernel to modules, consolidate elfcorehdr_addr, setup_elfcorehdr and saved_max_pfn 2011-03-23 19:47:19 -07:00
debugtraps.S sh: kgdb: Rework breakpoint handling on top of notifier chain. 2009-12-22 12:44:14 +09:00
disassemble.c
dma-nommu.c SH: adapt for dma_map_ops changes 2012-03-28 16:36:37 +02:00
dumpstack.c sh: fix format string bug in stack tracer 2014-04-03 16:20:49 -07:00
dwarf.c arch/sh/kernel/dwarf.c: use mempool_create_slab_pool() 2015-04-14 16:48:56 -07:00
entry-common.S sh: provide unified syscall trap compatible with all SH models 2016-03-17 19:46:06 +00:00
ftrace.c sh: ftrace: Fix the comments for ftrace_modify_code() 2015-12-23 14:27:24 -05:00
head_32.S sh: add device tree support and generic board using device tree 2016-03-17 19:46:11 +00:00
head_64.S sh64: Fix up early serial fixmap. 2010-01-12 15:22:26 +09:00
hw_breakpoint.c sh: Replace __get_cpu_var uses 2014-06-04 16:53:52 -07:00
idle.c sched/idle, SH: Remove redundant cpuidle_idle_call() 2014-02-11 09:58:26 +01:00
io.c sh: support for platforms without PIO. 2010-06-02 16:31:42 +09:00
io_trapped.c Kconfig: rename HAS_IOPORT to HAS_IOPORT_MAP 2014-04-07 16:36:11 -07:00
iomap.c sh: machvec IO death. 2010-11-01 09:49:04 -04:00
ioport.c sections: fix section conflicts in arch/sh 2012-10-06 03:04:40 +09:00
irq.c sh/irq: Use access helper irq_data_get_affinity_mask() 2015-07-29 10:08:08 +02:00
irq_32.c Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
irq_64.c sh64: update for IRQ flag handling naming changes. 2010-10-27 15:34:51 +09:00
kdebugfs.c sh: provide generic arch_debugfs_dir. 2010-09-24 04:04:26 +09:00
kgdb.c arch/sh/kernel/kgdb.c: add missing #include <linux/sched.h> 2014-01-21 16:19:42 -08:00
kprobes.c sh: Replace __get_cpu_var uses 2014-06-04 16:53:52 -07:00
machine_kexec.c memblock: s/memblock_analyze()/memblock_allow_resize()/ and update users 2011-12-08 10:22:08 -08:00
machvec.c sh: Kill off machvec IRQ hinting. 2012-05-21 17:54:01 +09:00
module.c modules: make arch's use default loader hooks 2011-07-24 22:06:04 +09:30
nmi_debug.c sh: nmi_debug support. 2009-09-01 17:38:32 +09:00
perf_callchain.c sh: remove warning and warning_symbol from struct stacktrace_ops 2011-05-23 14:42:15 +09:00
perf_event.c treewide: Remove old email address 2015-11-23 09:44:58 +01:00
process.c sh: delete __cpuinit usage from all sh files 2013-07-14 19:36:53 -04:00
process_32.c sh: move fpu_counter into ARCH specific thread_struct 2013-11-13 12:09:13 +09:00
process_64.c sh64: kernel: remove useless variable 'regs' 2013-11-13 12:08:59 +09:00
ptrace.c sh: Add kprobe-based event tracer. 2010-06-14 15:16:53 +09:00
ptrace_32.c ARCH: AUDIT: audit_syscall_entry() should not require the arch 2014-09-23 16:21:26 -04:00
ptrace_64.c ARCH: AUDIT: audit_syscall_entry() should not require the arch 2014-09-23 16:21:26 -04:00
reboot.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
relocate_kernel.S sh: add kexec jump support 2009-03-18 18:57:43 +09:00
return_address.c sh: handle early calls to return_address() when using dwarf unwinder. 2010-05-25 16:16:40 +09:00
setup.c arch/sh changes for 4.6. They include minor cleanups, a fix for a 2016-03-19 16:09:43 -07:00
sh_bios.c early_printk: consolidate random copies of identical code 2013-04-29 18:28:13 -07:00
sh_ksyms_32.c sh: New gcc support 2016-03-17 19:45:44 +00:00
sh_ksyms_64.c sh: use the new generic strnlen_user() function 2012-06-13 10:28:37 +09:00
signal_32.c Merge branch 'exec_domain_rip_v2' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc 2015-04-15 13:53:55 -07:00
signal_64.c Merge branch 'exec_domain_rip_v2' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc 2015-04-15 13:53:55 -07:00
smp.c arch/sh changes for 4.6. They include minor cleanups, a fix for a 2016-03-19 16:09:43 -07:00
stacktrace.c sh: remove warning and warning_symbol from struct stacktrace_ops 2011-05-23 14:42:15 +09:00
swsusp.c
sys_sh.c sh: avoid to flush all cache in sys_cacheflush 2010-11-17 17:55:30 +09:00
sys_sh32.c sh: push extra copy of r0-r2 for syscall parameters 2014-04-03 16:20:52 -07:00
syscalls_32.S sh: wire up finit_module syscall. 2013-01-14 17:59:03 +09:00
syscalls_64.S sh: wire up finit_module syscall. 2013-01-14 17:59:03 +09:00
time.c arch/sh/kernel/time.c: use PTR_ERR_OR_ZERO 2014-08-06 18:01:12 -07:00
topology.c arch/sh: remove references to cpu_*_map. 2012-02-24 13:21:45 +09:00
traps.c taint: add explicit flag to show whether lock dep is still OK. 2013-01-21 17:17:57 +10:30
traps_32.c sh: don't pass saved userspace state to exception handlers 2014-04-03 16:20:52 -07:00
traps_64.c arch/sh/kernel/traps_64.c: use sign_extend64() for sign extension 2015-11-06 17:50:42 -08:00
unwinder.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
vmlinux.lds.S arch, ftrace: for KASAN put hard/soft IRQ entries into separate sections 2016-03-25 16:37:42 -07:00