mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-28 21:33:52 +00:00
arm64: entry: suppress W=1 prototype warnings
When building with W=1, GCC complains that we haven't defined prototypes for a number of non-static functions in entry-common.c: | arch/arm64/kernel/entry-common.c:203:25: warning: no previous prototype for 'el1_sync_handler' [-Wmissing-prototypes] | 203 | asmlinkage void noinstr el1_sync_handler(struct pt_regs *regs) | | ^~~~~~~~~~~~~~~~ | arch/arm64/kernel/entry-common.c:377:25: warning: no previous prototype for 'el0_sync_handler' [-Wmissing-prototypes] | 377 | asmlinkage void noinstr el0_sync_handler(struct pt_regs *regs) | | ^~~~~~~~~~~~~~~~ | arch/arm64/kernel/entry-common.c:447:25: warning: no previous prototype for 'el0_sync_compat_handler' [-Wmissing-prototypes] | 447 | asmlinkage void noinstr el0_sync_compat_handler(struct pt_regs *regs) | | ^~~~~~~~~~~~~~~~~~~~~~~ ... and so automated build systems using W=1 end up sending a number of emails, despite this not being a real problem as the only callers are in entry.S where prototypes cannot matter. For similar cases in entry-common.c we added prototypes to asm/exception.h, so let's do the same thing here for consistency. Note that there are a number of other warnings printed with W=1, both under arch/arm64 and in core code, and this patch only addresses the cases in entry-common.c. Automated build systems typically filter these warnings such that they're only reported when changes are made nearby, so we don't need to solve them all at once. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Will Deacon <will@kernel.org> Link: https://lore.kernel.org/r/20201214113353.44417-1-mark.rutland@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
51550a4836
commit
bf023e76a8
1 changed files with 4 additions and 0 deletions
|
@ -31,6 +31,10 @@ static inline u32 disr_to_esr(u64 disr)
|
||||||
return esr;
|
return esr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
asmlinkage void el1_sync_handler(struct pt_regs *regs);
|
||||||
|
asmlinkage void el0_sync_handler(struct pt_regs *regs);
|
||||||
|
asmlinkage void el0_sync_compat_handler(struct pt_regs *regs);
|
||||||
|
|
||||||
asmlinkage void noinstr enter_el1_irq_or_nmi(struct pt_regs *regs);
|
asmlinkage void noinstr enter_el1_irq_or_nmi(struct pt_regs *regs);
|
||||||
asmlinkage void noinstr exit_el1_irq_or_nmi(struct pt_regs *regs);
|
asmlinkage void noinstr exit_el1_irq_or_nmi(struct pt_regs *regs);
|
||||||
asmlinkage void enter_from_user_mode(void);
|
asmlinkage void enter_from_user_mode(void);
|
||||||
|
|
Loading…
Reference in a new issue