mbox series

[00/15] arm64: address -Wmissing-prototype warnings

Message ID 20230516160642.523862-1-arnd@kernel.org
Headers show
Series arm64: address -Wmissing-prototype warnings | expand

Message

Arnd Bergmann May 16, 2023, 4:06 p.m. UTC
From: Arnd Bergmann <arnd@arndb.de>

This addresses all arm64 specific protype warnings. As with the arm32
patches, the majority of them  should be straightforward, either adding
an #include statement to get the right header, or ensuring that an unused
global function is left out of the build when the prototype is hidden.

The ones that are a bit awkward are those that just add a prototype to
shut up the warning, but the prototypes are never used for calling the
function because the only caller is in assembler code. I tried to come
up with other ways to shut up the compiler, and ideally this would be
triggered by the 'asmlinkage' keyword as Ard suggested in the past, but
I could not come up with a way to do this.

All of the warnings have to be addressed in some form before the
warning can be enabled by default.

    Arnd

Link: https://people.kernel.org/arnd/missing-prototype-warnings-in-the-kernel


Arnd Bergmann (15):
  arm64: xor-neon: mark xor_arm64_neon_*() static
  arm64: add scs_patch_vmlinux prototype
  arm64: avoid prototype warnings for syscalls
  arm64: move cpu_suspend_set_dbg_restorer() prototype to header
  arm64: spectre: provide prototypes for internal functions
  arm64: kvm: add prototypes for functions called in asm
  arm64: cpuidle: fix #ifdef for acpi functions
  arm64: efi: add efi_handle_corrupted_x18 prototype
  arm64: hide unused is_valid_bugaddr()
  arm64: module-plts: inline linux/moduleloader.h
  arm64: flush: include linux/libnvdimm.h
  arm64: kaslr: add kaslr_early_init() declaration
  arm64: signal: include asm/exception.h
  arm64: move early_brk64 prototype to header
  arm64: add alt_cb_patch_nops prototype

 arch/arm64/include/asm/alternative.h     |  3 +++
 arch/arm64/include/asm/archrandom.h      |  2 ++
 arch/arm64/include/asm/compat.h          |  2 ++
 arch/arm64/include/asm/efi.h             |  2 ++
 arch/arm64/include/asm/hw_breakpoint.h   |  8 ++++++++
 arch/arm64/include/asm/kvm_asm.h         | 18 ++++++++++++++++++
 arch/arm64/include/asm/scs.h             |  1 +
 arch/arm64/include/asm/spectre.h         | 16 ++++++++++++++++
 arch/arm64/include/asm/syscall_wrapper.h |  4 ++++
 arch/arm64/include/asm/traps.h           |  2 ++
 arch/arm64/kernel/cpuidle.c              |  2 +-
 arch/arm64/kernel/hw_breakpoint.c        |  8 --------
 arch/arm64/kernel/module-plts.c          |  1 +
 arch/arm64/kernel/signal.c               |  1 +
 arch/arm64/kernel/traps.c                |  3 ++-
 arch/arm64/lib/xor-neon.c                |  8 ++++----
 arch/arm64/mm/fault.c                    |  3 ---
 arch/arm64/mm/flush.c                    |  1 +
 18 files changed, 68 insertions(+), 17 deletions(-)

Comments

Catalin Marinas May 25, 2023, 6:25 p.m. UTC | #1
On Tue, 16 May 2023 18:06:27 +0200, Arnd Bergmann wrote:
> This addresses all arm64 specific protype warnings. As with the arm32
> patches, the majority of them  should be straightforward, either adding
> an #include statement to get the right header, or ensuring that an unused
> global function is left out of the build when the prototype is hidden.
> 
> The ones that are a bit awkward are those that just add a prototype to
> shut up the warning, but the prototypes are never used for calling the
> function because the only caller is in assembler code. I tried to come
> up with other ways to shut up the compiler, and ideally this would be
> triggered by the 'asmlinkage' keyword as Ard suggested in the past, but
> I could not come up with a way to do this.
> 
> [...]

Applied to arm64 (for-next/missing-proto-warn), thanks!

[01/15] arm64: xor-neon: mark xor_arm64_neon_*() static
        https://git.kernel.org/arm64/c/320a93d4df48
[02/15] arm64: add scs_patch_vmlinux prototype
        https://git.kernel.org/arm64/c/aea197160d74
[03/15] arm64: avoid prototype warnings for syscalls
        https://git.kernel.org/arm64/c/6ac19f96515e
[04/15] arm64: move cpu_suspend_set_dbg_restorer() prototype to header
        https://git.kernel.org/arm64/c/ec3a3db7100d
[05/15] arm64: spectre: provide prototypes for internal functions
        https://git.kernel.org/arm64/c/010089e9d3fe
[06/15] arm64: kvm: add prototypes for functions called in asm
        https://git.kernel.org/arm64/c/05d557a5cf59
[07/15] arm64: cpuidle: fix #ifdef for acpi functions
        https://git.kernel.org/arm64/c/68a879b55346
[08/15] arm64: efi: add efi_handle_corrupted_x18 prototype
        https://git.kernel.org/arm64/c/fbc0cd6f6044
[09/15] arm64: hide unused is_valid_bugaddr()
        https://git.kernel.org/arm64/c/b925b4314c91
[10/15] arm64: module-plts: inline linux/moduleloader.h
        https://git.kernel.org/arm64/c/60a0aab7463e
[11/15] arm64: flush: include linux/libnvdimm.h
        https://git.kernel.org/arm64/c/1a1183938946
[12/15] arm64: kaslr: add kaslr_early_init() declaration
        https://git.kernel.org/arm64/c/a7f5cb606e99
[13/15] arm64: signal: include asm/exception.h
        https://git.kernel.org/arm64/c/8ada7aab02ee
[14/15] arm64: move early_brk64 prototype to header
        https://git.kernel.org/arm64/c/e13d32e99264
[15/15] arm64: add alt_cb_patch_nops prototype
        https://git.kernel.org/arm64/c/c152aed4dcc2