linux/arch/powerpc/kernel
Christophe Leroy 26deb04342 powerpc: prepare string/mem functions for KASAN
CONFIG_KASAN implements wrappers for memcpy() memmove() and memset()
Those wrappers are doing the verification then call respectively
__memcpy() __memmove() and __memset(). The arches are therefore
expected to rename their optimised functions that way.

For files on which KASAN is inhibited, #defines are used to allow
them to directly call optimised versions of the functions without
going through the KASAN wrappers.

See commit 393f203f5f ("x86_64: kasan: add interceptors for
memset/memmove/memcpy functions") for details.

Other string / mem functions do not (yet) have kasan wrappers,
we therefore have to fallback to the generic versions when
KASAN is active, otherwise KASAN checks will be skipped.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
[mpe: Fixups to keep selftests working]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2019-05-03 01:20:25 +10:00
..
syscalls powerpc updates for 5.1 2019-03-07 12:56:26 -08:00
trace powerpc/64: Replace CURRENT_THREAD_INFO with PACA_THREAD_INFO 2019-02-23 22:31:40 +11:00
vdso32 powerpc/vdso: Drop unnecessary cc-ldoption 2019-05-01 10:49:58 +10:00
vdso64 powerpc/vdso: Drop unnecessary cc-ldoption 2019-05-01 10:49:58 +10:00
.gitignore
align.c Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
asm-offsets.c Merge branch 'topic/ppc-kvm' into next 2019-04-30 22:52:03 +10:00
audit.c
btext.c powerpc: Rework btext_find_display to use of_stdout and device_type helpers 2018-11-26 22:33:37 +11:00
cacheinfo.c powerpc/cacheinfo: Fix kobject memleak 2019-05-01 10:52:29 +10:00
cacheinfo.h
compat_audit.c
cpu_setup_6xx.S powerpc/6xx: fix setup and use of SPRN_SPRG_PGDIR for hash32 2019-03-19 00:30:19 +11:00
cpu_setup_44x.S
cpu_setup_fsl_booke.S powerpc/mm: move platform specific mmu-xxx.h in platform directories 2018-12-04 19:45:01 +11:00
cpu_setup_pa6t.S
cpu_setup_power.S
cpu_setup_ppc970.S
cputable.c powerpc/83xx: handle machine check caused by watchdog timer 2018-12-21 20:56:41 -06:00
crash_dump.c powerpc: don't use ioremap_prot() nor __ioremap() unless really needed. 2018-10-14 18:04:09 +11:00
crash.c
dbell.c powerpc: Add doorbell tracepoints 2019-05-01 16:45:05 +10:00
dma-iommu.c powerpc/dma: use the dma_direct mapping routines 2019-02-18 22:41:04 +11:00
dma-mask.c dma-mapping, powerpc: simplify the arch dma_set_mask override 2019-02-18 22:41:03 +11:00
dma-swiotlb.c powerpc/dma: use the generic direct mapping bypass 2019-02-18 22:41:04 +11:00
dt_cpu_ftrs.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
early_32.c powerpc/32: Move early_init() in a separate file 2019-05-03 01:20:25 +10:00
eeh_cache.c powerpc/eeh_cache: Bump log level of eeh_addr_cache_print() 2019-02-22 00:10:14 +11:00
eeh_dev.c powerpc/eeh: Cleanup list_head field names 2018-10-13 22:21:25 +11:00
eeh_driver.c powerpc/eeh: Improve recovery of passed-through devices 2019-02-05 11:55:44 +11:00
eeh_event.c powerpc/eeh: Add eeh_force_recover to debugfs 2019-02-22 00:10:15 +11:00
eeh_pe.c powerpc/eeh: Add include_passed to eeh_pe_state_clear() 2019-02-05 11:55:43 +11:00
eeh_sysfs.c powerpc/eeh: Add include_passed to eeh_pe_state_clear() 2019-02-05 11:55:43 +11:00
eeh.c powerpc/eeh: Add eeh_force_recover to debugfs 2019-02-22 00:10:15 +11:00
entry_32.S powerpc/32s: Implement Kernel Userspace Execution Prevention. 2019-04-21 23:11:46 +10:00
entry_64.S powerpc/64s: Implement KUAP for Radix MMU 2019-04-21 23:06:02 +10:00
epapr_hcalls.S powerpc/32: Remove CURRENT_THREAD_INFO and rename TI_CPU 2019-02-23 22:31:40 +11:00
epapr_paravirt.c
exceptions-64e.S powerpc/fsl: Fix the flush of branch predictor. 2019-02-27 22:52:38 +11:00
exceptions-64s.S Merge branch 'topic/ppc-kvm' into next 2019-04-30 22:52:03 +10:00
fadump.c powerpc/mm: move hugetlb_disabled into asm/hugetlb.h 2019-05-03 01:20:24 +10:00
firmware.c
fpu.S
fsl_booke_entry_mapping.S
head_8xx.S powerpc: Rename THREAD_INFO to TASK_STACK 2019-02-23 22:31:40 +11:00
head_32.S powerpc/32s: Implement Kernel Userspace Access Protection 2019-04-21 23:11:47 +10:00
head_40x.S powerpc: Rename THREAD_INFO to TASK_STACK 2019-02-23 22:31:40 +11:00
head_44x.S powerpc: 'current_set' is now a table of task_struct pointers 2019-02-23 22:31:40 +11:00
head_64.S powerpc/64: Fix booting large kernels with STRICT_KERNEL_RWX 2019-04-20 22:02:12 +10:00
head_booke.h powerpc: Activate CONFIG_THREAD_INFO_IN_TASK 2019-02-23 22:31:40 +11:00
head_fsl_booke.S powerpc: remove dead code in head_fsl_booke.S 2019-03-05 16:38:45 +11:00
hw_breakpoint.c powerpc: Add force enable of DAWR on P9 option 2019-04-20 22:20:45 +10:00
idle_6xx.S powerpc/32: Remove CURRENT_THREAD_INFO and rename TI_CPU 2019-02-23 22:31:40 +11:00
idle_book3e.S powerpc/64: Replace CURRENT_THREAD_INFO with PACA_THREAD_INFO 2019-02-23 22:31:40 +11:00
idle_book3s.S powerpc/64s: Reimplement book3s idle code in C 2019-04-30 22:37:48 +10:00
idle_e500.S powerpc/32: Remove CURRENT_THREAD_INFO and rename TI_CPU 2019-02-23 22:31:40 +11:00
idle_power4.S powerpc/64: Replace CURRENT_THREAD_INFO with PACA_THREAD_INFO 2019-02-23 22:31:40 +11:00
idle.c
ima_kexec.c
io-workarounds.c powerpc: handover page flags with a pgprot_t parameter 2018-10-14 18:04:09 +11:00
io.c
iomap.c
iommu.c IOMMU Updates for Linux v4.21 2019-01-01 15:55:29 -08:00
irq.c powerpc: clean stack pointers naming 2019-02-23 22:31:40 +11:00
isa-bridge.c powerpc: Use device_type helpers to access the node type 2018-11-26 22:33:37 +11:00
jump_label.c jump_label: move 'asm goto' support test to Kconfig 2019-01-06 09:46:51 +09:00
kexec_elf_64.c
kgdb.c powerpc: Activate CONFIG_THREAD_INFO_IN_TASK 2019-02-23 22:31:40 +11:00
kprobes-ftrace.c
kprobes.c
kvm_emul.S
kvm.c
l2cr_6xx.S
legacy_serial.c powerpc: Use of_node_name_eq for node name comparisons 2018-12-22 21:29:50 +11:00
machine_kexec_32.c
machine_kexec_64.c powerpc: Activate CONFIG_THREAD_INFO_IN_TASK 2019-02-23 22:31:40 +11:00
machine_kexec_file_64.c powerpc, kexec_file: factor out memblock-based arch_kexec_walk_mem() 2018-12-06 14:38:50 +00:00
machine_kexec.c
Makefile powerpc/32: Move early_init() in a separate file 2019-05-03 01:20:25 +10:00
mce_power.c powerpc/powernv/mce: Print additional information about MCE error. 2019-05-01 22:23:20 +10:00
mce.c powerpc/powernv/mce: Print additional information about MCE error. 2019-05-01 22:23:20 +10:00
misc_32.S powerpc/32: Remove CURRENT_THREAD_INFO and rename TI_CPU 2019-02-23 22:31:40 +11:00
misc_64.S
misc.S
module_32.c
module_64.c powerpc/64/module: REL32 relocation range check 2018-10-20 13:26:47 +11:00
module.c powerpc64/module elfv1: Set opd addresses after module relocation 2018-10-20 13:26:47 +11:00
module.lds
msi.c powerpc/msi: Fix NULL pointer access in teardown code 2018-11-29 23:49:11 +11:00
nvram_64.c powerpc: Adopt nvram module for PPC64 2019-01-22 10:21:45 +01:00
of_platform.c
optprobes_head.S
optprobes.c
paca.c powerpc/mm: Add helpers for accessing hash translation related variables 2019-04-21 23:12:38 +10:00
pci_32.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
pci_64.c powerpc: handover page flags with a pgprot_t parameter 2018-10-14 18:04:09 +11:00
pci_dn.c
pci_of_scan.c powerpc: Use device_type helpers to access the node type 2018-11-26 22:33:37 +11:00
pci-common.c powerpc updates for 5.1 2019-03-07 12:56:26 -08:00
pci-hotplug.c
pmc.c powerpc: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32 2018-11-26 22:33:37 +11:00
ppc32.h
ppc_save_regs.S
proc_powerpc.c
process.c powerpc/64s: Remove 'dummy_copy_buffer' 2019-05-01 12:08:44 +10:00
prom_init_check.sh powerpc: prepare string/mem functions for KASAN 2019-05-03 01:20:25 +10:00
prom_init.c powerpc/prom_init: Generate "phandle" instead of "linux, phandle" 2018-10-19 00:56:17 +11:00
prom_parse.c
prom.c powerpc: use memblock functions returning virtual address 2019-03-12 10:04:01 -07:00
ptrace32.c
ptrace.c powerpc: Add force enable of DAWR on P9 option 2019-04-20 22:20:45 +10:00
reloc_32.S
reloc_64.S
rtas_flash.c Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
rtas_pci.c
rtas-proc.c
rtas-rtc.c
rtas.c memblock: drop memblock_alloc_base() 2019-03-12 10:04:01 -07:00
rtasd.c Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
security.c powerpc/security: Fix spectre_v2 reporting 2019-03-21 21:09:03 +11:00
setup_32.c powerpc/32: Move early_init() in a separate file 2019-05-03 01:20:25 +10:00
setup_64.c powerpc/64: Setup KUP on secondary CPUs 2019-04-21 23:05:59 +10:00
setup-common.c powerpc/mm: fix erroneous duplicate slb_addr_limit init 2019-05-03 01:20:22 +10:00
setup.h
signal_32.c Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
signal_64.c powerpc/tm: Avoid machine crash on rt_sigreturn() 2019-05-01 23:03:29 +10:00
signal.c Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
signal.h
smp-tbsync.c
smp.c powerpc: 'current_set' is now a table of task_struct pointers 2019-02-23 22:31:40 +11:00
stacktrace.c powerpc: Remove export of save_stack_trace_tsk_reliable() 2019-03-02 14:43:05 +11:00
suspend.c
swsusp_32.S
swsusp_64.c
swsusp_asm64.S powerpc/64s/hash: Simplify slb_flush_and_rebolt() 2018-10-14 18:04:09 +11:00
swsusp_booke.S
swsusp.c
sys_ppc32.c
syscalls.c powerpc/64: Make sys_switch_endian() traceable 2019-02-22 00:10:15 +11:00
sysfs.c powerpc: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32 2018-11-26 22:33:37 +11:00
systbl_chk.sh
systbl.S powerpc: remove nargs from __SYSCALL 2019-03-02 14:43:05 +11:00
tau_6xx.c
time.c powerpc: Remove duplicate headers 2019-04-20 22:02:44 +10:00
tm.S Merge branch 'fixes' into next 2018-10-09 16:51:05 +11:00
traps.c powerpc/64s: Include <asm/nmi.h> header file to fix a warning 2019-03-13 15:03:13 +11:00
udbg_16550.c
udbg.c powerpc: use a CONSOLE_LOGLEVEL_DEBUG macro 2019-01-14 20:39:27 +11:00
uprobes.c
vdso.c powerpc/vdso: don't clear PG_reserved 2019-03-05 21:07:18 -08:00
vecemu.c
vector.S
vmlinux.lds.S powerpc/kconfig: define CONFIG_DATA_SHIFT and CONFIG_ETEXT_SHIFT 2019-02-23 21:04:32 +11:00
watchdog.c powerpc/watchdog: Use hrtimers for per-CPU heartbeat 2019-04-30 11:31:02 +10:00