linux_old1/arch/xtensa/include/asm
Luis R. Rodriguez 7d134b2ce6 kprobes: move kprobe declarations to asm-generic/kprobes.h
Often all is needed is these small helpers, instead of compiler.h or a
full kprobes.h.  This is important for asm helpers, in fact even some
asm/kprobes.h make use of these helpers...  instead just keep a generic
asm file with helpers useful for asm code with the least amount of
clutter as possible.

Likewise we need now to also address what to do about this file for both
when architectures have CONFIG_HAVE_KPROBES, and when they do not.  Then
for when architectures have CONFIG_HAVE_KPROBES but have disabled
CONFIG_KPROBES.

Right now most asm/kprobes.h do not have guards against CONFIG_KPROBES,
this means most architecture code cannot include asm/kprobes.h safely.
Correct this and add guards for architectures missing them.
Additionally provide architectures that not have kprobes support with
the default asm-generic solution.  This lets us force asm/kprobes.h on
the header include/linux/kprobes.h always, but most importantly we can
now safely include just asm/kprobes.h on architecture code without
bringing the full kitchen sink of header files.

Two architectures already provided a guard against CONFIG_KPROBES on its
kprobes.h: sh, arch.  The rest of the architectures needed gaurds added.
We avoid including any not-needed headers on asm/kprobes.h unless
kprobes have been enabled.

In a subsequent atomic change we can try now to remove compiler.h from
include/linux/kprobes.h.

During this sweep I've also identified a few architectures defining a
common macro needed for both kprobes and ftrace, that of the definition
of the breakput instruction up.  Some refer to this as
BREAKPOINT_INSTRUCTION.  This must be kept outside of the #ifdef
CONFIG_KPROBES guard.

[mcgrof@kernel.org: fix arm64 build]
  Link: http://lkml.kernel.org/r/CAB=NE6X1WMByuARS4mZ1g9+W=LuVBnMDnh_5zyN0CLADaVh=Jw@mail.gmail.com
[sfr@canb.auug.org.au: fixup for kprobes declarations moving]
  Link: http://lkml.kernel.org/r/20170214165933.13ebd4f4@canb.auug.org.au
Link: http://lkml.kernel.org/r/20170203233139.32682-1-mcgrof@kernel.org
Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Ananth N Mavinakayanahalli <ananth@linux.vnet.ibm.com>
Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-02-27 18:43:45 -08:00
..
Kbuild kprobes: move kprobe declarations to asm-generic/kprobes.h 2017-02-27 18:43:45 -08:00
asm-offsets.h
asm-uaccess.h xtensa: split uaccess.h into C and asm sides 2016-09-27 21:15:21 -04:00
asmmacro.h xtensa: fixes for configs without loop option 2015-11-02 18:02:47 +03:00
atomic.h locking/atomic: Remove linux/atomic.h:atomic_fetch_or() 2016-06-16 10:48:32 +02:00
barrier.h xtensa: define __smp_xxx 2016-01-12 20:46:58 +02:00
bitops.h xtensa: fix __ffs result type 2016-07-24 06:33:29 +03:00
bootparam.h xtensa: split bootparam and kernel meminfo 2014-04-02 01:35:51 +04:00
bugs.h
cache.h
cacheasm.h xtensa: define ___unlock_[di]cache_all unconditionally 2016-06-29 04:18:45 +03:00
cacheflush.h xtensa: support DMA to high memory 2015-11-09 01:25:37 +03:00
checksum.h Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
cmpxchg.h xtensa: implement fake NMI 2015-08-17 07:33:39 +03:00
coprocessor.h xtensa: reorganize SR referencing 2012-10-15 21:48:08 -07:00
current.h xtensa: clean up files to make them code-style compliant 2012-12-18 21:10:25 -08:00
delay.h xtensa: implement ndelay 2014-01-15 00:28:11 +04:00
device.h treewide: Move dma_ops from struct dev_archdata into struct device 2017-01-24 12:23:35 -05:00
dma-mapping.h treewide: Consolidate get_dma_ops() implementations 2017-01-24 12:23:35 -05:00
dma.h Fix common misspellings 2011-03-31 11:26:23 -03:00
elf.h xtensa: add support for TLS 2013-02-23 19:35:57 -08:00
fb.h
fixmap.h xtensa: add alternative kernel memory layouts 2016-07-24 06:33:58 +03:00
flat.h
ftrace.h ftrace: Make CALLER_ADDRx macros more generic 2014-05-21 03:10:32 -04:00
futex.h xtensa: implement robust futex atomic uaccess ops 2014-01-14 10:19:51 -08:00
highmem.h xtensa: add alternative kernel memory layouts 2016-07-24 06:33:58 +03:00
hw_breakpoint.h xtensa: support hardware breakpoints/watchpoints 2016-03-11 08:53:32 +00:00
hw_irq.h
initialize_mmu.h xtensa: cleanup MMU setup and kernel layout macros 2016-07-24 06:33:58 +03:00
io.h xtensa: support ioremap for memory outside KIO region 2016-01-11 17:37:36 +03:00
irq.h xtensa: implement CPU hotplug 2014-01-14 10:19:59 -08:00
irqflags.h xtensa: support hardware breakpoints/watchpoints 2016-03-11 08:53:32 +00:00
kmem_layout.h xtensa: cleanup MMU setup and kernel layout macros 2016-07-24 06:33:58 +03:00
mmu.h xtensa: add SMP support 2014-01-14 10:19:58 -08:00
mmu_context.h xtensa: nommu: move init_mmu stub to nommu_context.h 2014-10-21 13:28:44 +04:00
module.h Make most arch asm/module.h files use asm-generic/module.h 2012-09-28 14:31:03 +09:30
mxregs.h xtensa: add MX irqchip 2014-01-14 10:19:58 -08:00
nommu_context.h xtensa: nommu: move init_mmu stub to nommu_context.h 2014-10-21 13:28:44 +04:00
page.h xtensa: minimize use of PLATFORM_DEFAULT_MEM_{ADDR,SIZE} 2016-07-24 06:33:59 +03:00
param.h UAPI: (Scripted) Disintegrate arch/xtensa/include/asm 2012-10-15 21:48:53 -07:00
pci-bridge.h xtensa: clean up files to make them code-style compliant 2012-12-18 21:10:25 -08:00
pci.h PCI: Move pci_dma_* helpers to common code 2016-03-07 10:40:02 -06:00
perf_event.h xtensa: enable HAVE_PERF_EVENTS 2014-01-15 00:27:03 +04:00
pgalloc.h tree wide: get rid of __GFP_REPEAT for order-0 allocations part I 2016-06-24 17:23:52 -07:00
pgtable.h xtensa: move kernel mapping addresses into kmem_layout.h 2016-07-24 06:33:57 +03:00
platform.h xtensa: extract common CPU reset code into separate function 2016-09-11 23:53:22 -07:00
processor.h locking/core: Provide common cpu_relax_yield() definition 2016-11-17 08:17:36 +01:00
ptrace.h xtensa: add SMP support 2014-01-14 10:19:58 -08:00
regs.h xtensa: support hardware breakpoints/watchpoints 2016-03-11 08:53:32 +00:00
segment.h Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
serial.h
shmparam.h
signal.h consolidate kernel-side struct sigaction declarations 2013-02-03 15:09:22 -05:00
smp.h xtensa: implement CPU hotplug 2014-01-14 10:19:59 -08:00
spinlock.h locking/spinlock, arch: Update and fix spin_unlock_wait() implementations 2016-06-14 11:55:15 +02:00
spinlock_types.h xtensa: fix arch spinlock function names 2014-01-14 10:19:53 -08:00
stacktrace.h xtensa: move oprofile stack tracing to stacktrace.c 2015-08-17 07:32:49 +03:00
string.h xtensa: fix str[n]cmp return value 2013-02-23 19:22:31 -08:00
switch_to.h Disintegrate asm/system.h for Xtensa 2012-03-28 18:30:03 +01:00
syscall.h xtensa: switch to generic sigaltstack 2013-02-03 18:16:27 -05:00
sysmem.h xtensa: drop sysmem and switch to memblock 2016-07-24 06:34:00 +03:00
thread_info.h xtensa: support hardware breakpoints/watchpoints 2016-03-11 08:53:32 +00:00
timex.h xtensa: use XTENSA_INT_LEVEL macro in asm/timex.h 2016-01-11 17:32:40 +03:00
tlb.h
tlbflush.h xtensa: optimize local_flush_tlb_kernel_range 2014-04-06 21:29:17 +04:00
traps.h xtensa: support hardware breakpoints/watchpoints 2016-03-11 08:53:32 +00:00
types.h UAPI: (Scripted) Disintegrate arch/xtensa/include/asm 2012-10-15 21:48:53 -07:00
uaccess.h xtensa: split uaccess.h into C and asm sides 2016-09-27 21:15:21 -04:00
ucontext.h
unaligned.h
unistd.h consolidate cond_syscall and SYSCALL_ALIAS declarations 2013-03-03 22:55:19 -05:00
user.h
vectors.h xtensa: cleanup MMU setup and kernel layout macros 2016-07-24 06:33:58 +03:00
vga.h