linux/arch/arm/include/asm
Arnd Bergmann ae1f8d793a ARM: 9304/1: add prototype for function called only from asm
When building with 'make W=1', the compiler warns about any function
definition that does not come with a prototype in a header, to ensure
it matches what the caller expects.

This includes functions that are only ever caller from assembly
code and don't technically need a declaration:

arch/arm/kernel/ftrace.c:227:6: error: no previous prototype for 'prepare_ftrace_return'
arch/arm/kernel/ptrace.c:850:16: error: no previous prototype for 'syscall_trace_enter'
arch/arm/kernel/ptrace.c:878:17: error: no previous prototype for 'syscall_trace_exit'
arch/arm/kernel/signal.c:601:1: error: no previous prototype for 'do_work_pending'
arch/arm/kernel/signal.c:672:17: error: no previous prototype for 'do_rseq_syscall'
arch/arm/kernel/suspend.c:75:6: error: no previous prototype for '__cpu_suspend_save'
arch/arm/kernel/traps.c:451:17: error: no previous prototype for 'do_undefinstr'
arch/arm/kernel/traps.c:516:39: error: no previous prototype for 'handle_fiq_as_nmi'
arch/arm/kernel/traps.c:535:17: error: no previous prototype for 'bad_mode'
arch/arm/kernel/traps.c:608:16: error: no previous prototype for 'arm_syscall'
arch/arm/kernel/traps.c:734:1: error: no previous prototype for 'baddataabort'
arch/arm/kernel/traps.c:774:17: error: no previous prototype for '__div0'
arch/arm/kernel/traps.c:97:6: error: no previous prototype for 'dump_backtrace_stm'
arch/arm/kernel/unwind.c:40:6: error: no previous prototype for '__aeabi_unwind_cpp_pr0'
arch/arm/kernel/unwind.c:45:6: error: no previous prototype for '__aeabi_unwind_cpp_pr1'
arch/arm/kernel/unwind.c:50:6: error: no previous prototype for '__aeabi_unwind_cpp_pr2'
arch/arm/mm/fault.c:554:1: error: no previous prototype for 'do_DataAbort'
arch/arm/mm/fault.c:584:1: error: no previous prototype for 'do_PrefetchAbort'
arch/arm/mm/proc-v7-bugs.c:280:6: error: no previous prototype for 'cpu_v7_ca8_ibe'
arch/arm/mm/proc-v7-bugs.c:293:6: error: no previous prototype for 'cpu_v7_bugs_init'
arch/arm/vdso/vgettimeofday.c:36:6: error: no previous prototype for '__aeabi_unwind_cpp_pr0'
arch/arm/vdso/vgettimeofday.c:40:6: error: no previous prototype for '__aeabi_unwind_cpp_pr1'
arch/arm/vdso/vgettimeofday.c:44:6: error: no previous prototype for '__aeabi_unwind_cpp_pr2'
arch/arm/vfp/vfpmodule.c:323:6: error: no previous prototype for 'VFP_bounce'

Add the prototypes anyway, to allow enabling this warning by default in
the future.

Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2023-06-19 09:35:52 +01:00
..
hardware ARM: footbridge: remove custom DMA address handling 2022-09-15 15:59:16 +02:00
mach ARM: 9298/1: Drop custom mdesc->handle_irq() 2023-06-19 09:35:48 +01:00
vdso vdso/treewide: Add vdso_data pointer argument to __arch_get_hw_counter() 2020-08-06 10:57:30 +02:00
xen arm/xen: Introduce xen_setup_dma_ops() 2022-06-06 08:54:33 +02:00
arch_gicv3.h arm64: add ARM64_HAS_GIC_PRIO_RELAXED_SYNC cpucap 2023-01-31 16:06:17 +00:00
arch_timer.h clocksource/drivers/arm_arch_timer: Drop unnecessary ISB on CVAL programming 2021-10-17 21:47:44 +02:00
archrandom.h random: remove CONFIG_ARCH_RANDOM 2022-07-18 15:03:37 +02:00
arm-cci.h
arm_pmuv3.h ARM: perf: Allow the use of the PMUv3 driver on 32bit ARM 2023-03-27 14:01:18 +01:00
asm-offsets.h
assembler.h ARM: 9294/2: vfp: Fix broken softirq handling with instrumentation enabled 2023-04-12 10:04:56 +01:00
atomic.h locking/atomic: arm: move to ARCH_ATOMIC 2021-05-26 13:20:50 +02:00
auxvec.h
barrier.h
bitops.h arm: align find_bit declarations with generic kernel 2022-07-14 15:21:43 -07:00
bitrev.h
bL_switcher.h
bug.h arm: print alloc free paths for address in registers 2021-05-07 00:26:34 -07:00
bugs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
cache.h treewide: Convert macro and uses of __section(foo) to __section("foo") 2020-10-25 14:51:49 -07:00
cacheflush.h ARM development updates for 5.18: 2022-03-23 17:35:57 -07:00
cachetype.h
checksum.h net: checksum: drop the linux/uaccess.h include 2023-01-27 11:19:46 +00:00
clocksource.h arm: Introduce asm/vdso/clocksource.h 2020-03-21 15:23:54 +01:00
cmpxchg.h locking/arch: Rename all internal __xchg() names to __arch_xchg() 2023-04-29 09:08:44 +02:00
compiler.h
cp15.h arm: vdso: Enable arm to use common headers 2020-03-21 15:24:03 +01:00
cpu.h
cpufeature.h
cpuidle.h arm64 updates for 5.14 2021-06-28 14:04:24 -07:00
cputype.h ARM: 9267/1: Define Armv8 registers in AArch32 state 2022-11-28 11:57:31 +00:00
cti.h
current.h ARM: make get_current() and __my_cpu_offset() __always_inline 2022-01-31 16:06:35 +01:00
dcc.h
delay.h
device.h ARM/dma-mapping: remove the dma_coherent member of struct dev_archdata 2022-10-06 14:31:08 +02:00
div64.h ARM: 9118/1: div64: Remove always-true __div64_const32_is_OK() duplicate 2021-08-20 11:39:28 +01:00
dma-iommu.h ARM/dma-mapping: const a pointer to bus_type in arm_iommu_create_mapping() 2023-03-23 13:21:51 +01:00
dma.h ARM: footbridge: remove custom DMA address handling 2022-09-15 15:59:16 +02:00
dmi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
domain.h ARM: 9211/1: domain: drop modify_domain() 2022-07-06 22:44:49 +01:00
ecard.h
edac.h
efi.h efi: Discover BTI support in runtime services regions 2023-02-04 09:19:02 +01:00
elf.h ARM: module: implement support for PC-relative group relocations 2021-12-06 12:49:16 +01:00
exception.h
fb.h
fiq.h
firmware.h
fixmap.h ARM updates for 5.11: 2020-12-22 13:34:27 -08:00
floppy.h floppy: split the base port from the register in I/O accesses 2020-05-12 19:34:52 +03:00
fncpy.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
fpstate.h ARM: 9228/1: vfp: kill vfp_flush/release_thread() 2022-08-31 14:50:08 +01:00
ftrace.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
futex.h ARM: futex: Address build warning 2020-05-07 00:41:47 +02:00
glue-cache.h
glue-df.h
glue-pf.h
glue-proc.h
glue.h
hardirq.h ARM: irqstat: Get rid of duplicated declaration 2020-11-23 10:31:05 +01:00
highmem.h ARM: highmem: Fix cache_is_vivt() reference 2020-12-04 23:35:34 +01:00
hugetlb-3level.h
hugetlb.h mm/hugetlb: define a generic fallback for arch_clear_hugepage_flags() 2020-06-03 20:09:46 -07:00
hw_breakpoint.h ARM: 8927/1: ARM/hw_breakpoint: add more ARMv8 debug architecture versions support 2019-11-15 22:21:08 +00:00
hw_irq.h
hwcap.h
hypervisor.h arm/arm64: Probe for the presence of KVM hypervisor 2021-03-31 09:16:55 +01:00
ide.h
idmap.h treewide: Convert macro and uses of __section(foo) to __section("foo") 2020-10-25 14:51:49 -07:00
insn.h ARM: 9176/1: avoid literal references in inline assembly 2022-01-06 12:58:58 +00:00
io.h ARM: mm: kill unused runtime hook arch_iounmap() 2022-06-27 12:21:09 +01:00
irq.h ARM: remove old-style irq entry 2021-12-06 12:49:11 +01:00
irq_work.h ARM: 9217/1: add definition of arch_irq_work_raise() 2022-07-28 15:09:15 +01:00
irqflags.h
jump_label.h
kasan.h ARM: 9016/2: Initialize the mapping of KASan shadow memory 2020-10-27 12:11:10 +00:00
kasan_def.h ARM: 9015/2: Define the virtual space of KASan's shadow region 2020-10-27 12:11:08 +00:00
Kbuild local64.h: make <asm/local64.h> mandatory 2020-12-29 15:36:49 -08:00
kexec-internal.h ARM: kexec: fix oops after TLB are invalidated 2021-02-05 10:23:29 +00:00
kexec.h ARM: 9060/1: kexec: Remove unused kexec_reinit callback 2021-03-09 10:25:35 +00:00
kfence.h ARM: 9166/1: Support KFENCE for ARM 2021-12-17 11:34:38 +00:00
kgdb.h
kprobes.h ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template 2020-10-27 12:11:51 +00:00
krait-l2-accessors.h
linkage.h
mc146818rtc.h
mcpm.h
mcs_spinlock.h
memblock.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
memory.h arm: include asm-generic/memory_model.h from page.h rather than memory.h 2023-02-09 16:51:40 -08:00
mmu.h ARM: mm: make vmalloc_seq handling SMP safe 2022-01-25 09:53:52 +01:00
mmu_context.h ARM: mm: make vmalloc_seq handling SMP safe 2022-01-25 09:53:52 +01:00
module.h ARM: 9252/1: module: Teach unwinder about PLTs 2022-11-07 14:18:59 +00:00
module.lds.h kbuild: preprocess module linker script 2020-09-25 00:36:41 +09:00
mpu.h
mtd-xip.h
neon.h
nwflash.h misc: move FLASH_MINOR into miscdevice.h and fix conflicts 2020-03-18 12:27:04 +01:00
opcodes-sec.h
opcodes-virt.h
opcodes.h ARM: 9145/1: patch: fix BE32 compilation 2021-10-25 13:12:36 +01:00
outercache.h
page-nommu.h
page.h arm: include asm-generic/memory_model.h from page.h rather than memory.h 2023-02-09 16:51:40 -08:00
paravirt.h x86/paravirt: Switch time pvops functions to use static_call() 2021-03-11 16:17:52 +01:00
paravirt_api_clock.h sched/headers: ARM needs asm/paravirt_api_clock.h too 2022-03-22 08:53:10 +01:00
patch.h
pci.h PCI: Remove pci_get_legacy_ide_irq() and asm-generic/pci.h 2022-07-22 17:23:45 -05:00
percpu.h ARM: make get_current() and __my_cpu_offset() __always_inline 2022-01-31 16:06:35 +01:00
perf_event.h ARM: 9251/1: perf: Fix stacktraces for tracepoint events in THUMB2 kernels 2022-11-07 14:16:43 +00:00
pgalloc.h mm/thp: define default pmd_pgtable() 2021-07-01 11:06:03 -07:00
pgtable-2level-hwdef.h
pgtable-2level-types.h
pgtable-2level.h arm/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE 2023-02-02 22:33:06 -08:00
pgtable-3level-hwdef.h
pgtable-3level-types.h
pgtable-3level.h arm/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE 2023-02-02 22:33:06 -08:00
pgtable-hwdef.h
pgtable-nommu.h MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
pgtable.h arm/mm: fix swp type masking in __swp_entry() 2023-02-09 16:51:30 -08:00
probes.h
proc-fns.h
processor.h kernel: exit: cleanup release_thread() 2022-09-11 21:55:07 -07:00
procinfo.h
prom.h ARM: 9011/1: centralize phys-to-virt conversion of DT/ATAGS address 2020-10-27 12:10:59 +00:00
psci.h
ptdump.h ARM: 9255/1: efi/dump UEFI runtime page tables for ARM 2022-11-07 14:19:01 +00:00
ptrace.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
seccomp.h arm: Enable seccomp architecture tracking 2020-11-20 11:16:34 -08:00
sections.h arm: Remove HYP/Stage-2 page-table support 2020-03-24 10:56:05 +00:00
secure_cntvoff.h
semihost.h serial: earlycon-arm-semihost: Move smh_putc() variants in respective arch's semihost.h 2023-01-19 14:58:19 +01:00
set_memory.h ARM: 9164/1: mm: Provide set_memory_valid() 2021-12-17 11:34:36 +00:00
setup.h ARM: 9147/1: add printf format attribute to early_print() 2021-10-25 13:12:37 +01:00
shmparam.h
signal.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
simd.h ARM: 9283/1: permit non-nested kernel mode NEON in softirq context 2023-01-11 16:21:21 +00:00
smp.h ARM: remove some dead code 2021-12-03 15:11:31 +01:00
smp_plat.h
smp_scu.h
smp_twd.h ARM: 8822/1: smp_twd: Remove legacy TWD registration 2019-02-01 21:44:10 +00:00
sparsemem.h
spectre.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
spinlock.h locking: Fix typos in comments 2021-03-22 02:45:52 +01:00
spinlock_types.h locking: Allow to include asm/spinlock_types.h from linux/spinlock_types_raw.h 2021-12-07 15:14:12 +01:00
stackprotector.h stackprotector: actually use get_random_canary() 2022-11-18 02:18:10 +01:00
stacktrace.h ARM: 9258/1: stacktrace: Make stack walk callback consistent with generic code 2022-11-08 18:36:18 +00:00
string.h ARM: 9014/2: Replace string mem* functions for KASan 2020-10-27 12:11:06 +00:00
suspend.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
swab.h
switch_to.h ARM development updates for 5.18: 2022-03-23 17:35:57 -07:00
sync_bitops.h locking/atomic: arm: move to ARCH_ATOMIC 2021-05-26 13:20:50 +02:00
syscall.h arch: remove unused function syscall_set_arguments() 2021-09-14 16:06:20 +02:00
system_info.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
system_misc.h ARM: 9096/1: Remove arm_pm_restart() 2021-06-13 18:16:48 +01:00
tcm.h treewide: Convert macro and uses of __section(foo) to __section("foo") 2020-10-25 14:51:49 -07:00
therm.h
thread_info.h ARM: renumber bits related to _TIF_WORK_MASK 2023-01-04 07:55:02 -07:00
thread_notify.h
timex.h arm: use fallback for random_get_entropy() instead of zero 2022-05-13 23:59:23 +02:00
tlb.h mm: account PMD tables like PTE tables 2020-10-13 18:38:31 -07:00
tlbflush.h mm: update legacy flush_tlb_* to use vma 2021-06-29 10:53:52 -07:00
tls.h ARM: smp: elide HWCAP_TLS checks or __entry_task updates on SMP+v6 2022-01-25 09:53:52 +01:00
topology.h arch_topology: Remove unused topology_set_thermal_pressure() and related 2021-11-23 15:10:26 +05:30
traps.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
uaccess-asm.h ARM: 9113/1: uaccess: remove set_fs() implementation 2021-08-20 11:39:27 +01:00
uaccess.h uaccess: generalize access_ok() 2022-02-25 09:36:05 +01:00
ucontext.h ARM: ep93xx: remove MaverickCrunch support 2021-08-04 13:30:04 +02:00
unified.h ARM: 9116/1: unified: Remove check for gcc < 4 2021-08-20 11:39:28 +01:00
unistd.h
unwind.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
uprobes.h
user.h asm/user.h: killed unused macros 2022-01-30 21:17:00 -05:00
v7m.h irqchip: nvic: Use GENERIC_IRQ_MULTI_HANDLER 2021-12-06 12:49:16 +01:00
vdso.h
vdso_datapage.h ARM: 8930/1: Add support for generic vDSO 2019-11-15 22:21:12 +00:00
vermagic.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
vfp.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
vfpmacros.h ARM: 8991/1: use VFP assembler mnemonics if available 2020-07-21 16:33:39 +01:00
vga.h
virt.h arm: Remove the ability to set HYP vectors outside of the decompressor 2020-03-24 10:56:05 +00:00
vmalloc.h mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
vmlinux.lds.h objtool/idle: Validate __cpuidle code as noinstr 2023-01-13 11:48:15 +01:00
word-at-a-time.h
xor.h ARM: 9260/1: lib/xor: use r10 rather than r7 in xor_arm4regs_{2|3} 2022-11-07 14:19:03 +00:00