[PATCH] riscv: kexec: Fix W=1 build warnings
Palmer Dabbelt
palmer at dabbelt.com
Sat May 22 22:07:33 PDT 2021
On Sat, 08 May 2021 09:44:43 PDT (-0700), jszhang3 at mail.ustc.edu.cn wrote:
> From: Jisheng Zhang <jszhang at kernel.org>
>
> Fixes the following W=1 build warning(s):
>
> In file included from include/linux/kexec.h:28,
> from arch/riscv/kernel/machine_kexec.c:7:
> arch/riscv/include/asm/kexec.h:45:1: warning: ‘extern’ is not at beginning of declaration [-Wold-style-declaration]
> 45 | const extern unsigned char riscv_kexec_relocate[];
> | ^~~~~
> arch/riscv/include/asm/kexec.h:46:1: warning: ‘extern’ is not at beginning of declaration [-Wold-style-declaration]
> 46 | const extern unsigned int riscv_kexec_relocate_size;
> | ^~~~~
> arch/riscv/kernel/machine_kexec.c:125:6: warning: no previous prototype for ‘machine_shutdown’ [-Wmissing-prototypes]
> 125 | void machine_shutdown(void)
> | ^~~~~~~~~~~~~~~~
> arch/riscv/kernel/machine_kexec.c:147:1: warning: no previous prototype for ‘machine_crash_shutdown’ [-Wmissing-prototypes]
> 147 | machine_crash_shutdown(struct pt_regs *regs)
> | ^~~~~~~~~~~~~~~~~~~~~~
> arch/riscv/kernel/machine_kexec.c:23: warning: Function parameter or member 'image' not described in 'kexec_image_info'
> arch/riscv/kernel/machine_kexec.c:53: warning: Function parameter or member 'image' not described in 'machine_kexec_prepare'
> arch/riscv/kernel/machine_kexec.c:114: warning: Function parameter or member 'image' not described in 'machine_kexec_cleanup'
> arch/riscv/kernel/machine_kexec.c:148: warning: Function parameter or member 'regs' not described in 'machine_crash_shutdown'
> arch/riscv/kernel/machine_kexec.c:167: warning: Function parameter or member 'image' not described in 'machine_kexec'
>
> Signed-off-by: Jisheng Zhang <jszhang at kernel.org>
> ---
> arch/riscv/include/asm/kexec.h | 4 ++--
> arch/riscv/kernel/machine_kexec.c | 11 ++++++-----
> 2 files changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/arch/riscv/include/asm/kexec.h b/arch/riscv/include/asm/kexec.h
> index 1e954101906a..e4e291d40759 100644
> --- a/arch/riscv/include/asm/kexec.h
> +++ b/arch/riscv/include/asm/kexec.h
> @@ -42,8 +42,8 @@ struct kimage_arch {
> unsigned long fdt_addr;
> };
>
> -const extern unsigned char riscv_kexec_relocate[];
> -const extern unsigned int riscv_kexec_relocate_size;
> +extern const unsigned char riscv_kexec_relocate[];
> +extern const unsigned int riscv_kexec_relocate_size;
>
> typedef void (*riscv_kexec_method)(unsigned long first_ind_entry,
> unsigned long jump_addr,
> diff --git a/arch/riscv/kernel/machine_kexec.c b/arch/riscv/kernel/machine_kexec.c
> index cc048143fba5..9e99e1db156b 100644
> --- a/arch/riscv/kernel/machine_kexec.c
> +++ b/arch/riscv/kernel/machine_kexec.c
> @@ -14,8 +14,9 @@
> #include <asm/set_memory.h> /* For set_memory_x() */
> #include <linux/compiler.h> /* For unreachable() */
> #include <linux/cpu.h> /* For cpu_down() */
> +#include <linux/reboot.h>
>
> -/**
> +/*
> * kexec_image_info - Print received image details
> */
> static void
> @@ -39,7 +40,7 @@ kexec_image_info(const struct kimage *image)
> }
> }
>
> -/**
> +/*
> * machine_kexec_prepare - Initialize kexec
> *
> * This function is called from do_kexec_load, when the user has
> @@ -100,7 +101,7 @@ machine_kexec_prepare(struct kimage *image)
> }
>
>
> -/**
> +/*
> * machine_kexec_cleanup - Cleanup any leftovers from
> * machine_kexec_prepare
> *
> @@ -135,7 +136,7 @@ void machine_shutdown(void)
> #endif
> }
>
> -/**
> +/*
> * machine_crash_shutdown - Prepare to kexec after a kernel crash
> *
> * This function is called by crash_kexec just before machine_kexec
> @@ -151,7 +152,7 @@ machine_crash_shutdown(struct pt_regs *regs)
> pr_info("Starting crashdump kernel...\n");
> }
>
> -/**
> +/*
> * machine_kexec - Jump to the loaded kimage
> *
> * This function is called by kernel_kexec which is called by the
> --
> 2.31.0
This is on fixes. I got a corrupt patch error from checkpatch, but it
looks OK to me and git appears to have merged it fine. LMK if I missed
something, though.
Thanks!
More information about the linux-riscv
mailing list