[PATCH] arm64: syscall: include prototype for EL0 SVC functions

Mark Rutland mark.rutland at arm.com
Fri Jan 15 08:11:53 EST 2021


On Thu, Jan 14, 2021 at 12:48:12PM +0000, Mark Rutland wrote:
> The kbuild test robot reports that when building with W=1, GCC will warn
> for a couple of missing prototypes in syscall.c:
> 
> |  arch/arm64/kernel/syscall.c:157:6: warning: no previous prototype for 'do_el0_svc' [-Wmissing-prototypes]
> |    157 | void do_el0_svc(struct pt_regs *regs)
> |        |      ^~~~~~~~~~
> |  arch/arm64/kernel/syscall.c:164:6: warning: no previous prototype for 'do_el0_svc_compat' [-Wmissing-prototypes]
> |    164 | void do_el0_svc_compat(struct pt_regs *regs)
> |        |      ^~~~~~~~~~~~~~~~~
> 
> While this isn't a functional problem, as a general policy we should
> include the prototype for functions wherever possible to catch any
> accidental divergence between the prototype and implementation. Here we
> can easily include <asm/exception.h>, so let's do so.
> 
> While there are a number of warnings elsewhere and some warnings enabled
> under W=1 are of questionable benefit, this change helps to make the
> code more robust as it evolved and reduces the noise somewhat, so it
> seems worthwhile.
> 
> Reported-by: kernel test robot <lkp at intel.com>
> Cc: Catalin Marinas <catalin.marinas at arm.com>
> Cc: Will Deacon <will at kernel.org>
> Link: https://lore.kernel.org/r/202101141046.n8iPO3mw-lkp@intel.com

Whoops; I messed up the tags here.

For the record, the tags should have started with:

Signed-off-by: Mark Rutland <mark.rutland at arm.com>

... and please feel free to fold that in!

Mark.

> ---
>  arch/arm64/kernel/syscall.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm64/kernel/syscall.c b/arch/arm64/kernel/syscall.c
> index f61e9d8cc55a..5991e72d4b8f 100644
> --- a/arch/arm64/kernel/syscall.c
> +++ b/arch/arm64/kernel/syscall.c
> @@ -9,6 +9,7 @@
>  
>  #include <asm/daifflags.h>
>  #include <asm/debug-monitors.h>
> +#include <asm/exception.h>
>  #include <asm/fpsimd.h>
>  #include <asm/syscall.h>
>  #include <asm/thread_info.h>
> -- 
> 2.11.0
> 



More information about the linux-arm-kernel mailing list