trap: cleanup trap_init()

There are some empty trap_init() definitions in different ARCHs, Introduce
a new weak trap_init() function to clean them up.

Link: https://lkml.kernel.org/r/20210812123602.76356-1-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Acked-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>	[arm32]
Acked-by: Vineet Gupta						[arc]
Acked-by: Michael Ellerman <mpe@ellerman.id.au>			[powerpc]
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Ley Foon Tan <ley.foon.tan@intel.com>
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Stafford Horne <shorne@gmail.com>
Cc: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Helge Deller <deller@gmx.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Paul Walmsley <palmerdabbelt@google.com>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Richard Weinberger <richard@nod.at>
Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Kefeng Wang 2021-09-07 20:16:06 -07:00 committed by Linus Torvalds
parent b234ed6d62
commit 8b097881b5
12 changed files with 2 additions and 51 deletions

View File

@ -20,11 +20,6 @@
#include <asm/unaligned.h> #include <asm/unaligned.h>
#include <asm/kprobes.h> #include <asm/kprobes.h>
void __init trap_init(void)
{
return;
}
void die(const char *str, struct pt_regs *regs, unsigned long address) void die(const char *str, struct pt_regs *regs, unsigned long address)
{ {
show_kernel_fault_diag(str, regs, address); show_kernel_fault_diag(str, regs, address);

View File

@ -781,11 +781,6 @@ void abort(void)
panic("Oops failed to kill thread"); panic("Oops failed to kill thread");
} }
void __init trap_init(void)
{
return;
}
#ifdef CONFIG_KUSER_HELPERS #ifdef CONFIG_KUSER_HELPERS
static void __init kuser_init(void *vectors) static void __init kuser_init(void *vectors)
{ {

View File

@ -39,10 +39,6 @@ void __init base_trap_init(void)
{ {
} }
void __init trap_init(void)
{
}
asmlinkage void set_esp0(unsigned long ssp) asmlinkage void set_esp0(unsigned long ssp)
{ {
current->thread.esp0 = ssp; current->thread.esp0 = ssp;

View File

@ -28,10 +28,6 @@
#define TRAP_SYSCALL 1 #define TRAP_SYSCALL 1
#define TRAP_DEBUG 0xdb #define TRAP_DEBUG 0xdb
void __init trap_init(void)
{
}
#ifdef CONFIG_GENERIC_BUG #ifdef CONFIG_GENERIC_BUG
/* Maybe should resemble arch/sh/kernel/traps.c ?? */ /* Maybe should resemble arch/sh/kernel/traps.c ?? */
int is_valid_bugaddr(unsigned long addr) int is_valid_bugaddr(unsigned long addr)

View File

@ -183,11 +183,6 @@ void __pgd_error(const char *file, int line, unsigned long val)
} }
extern char *exception_vector, *exception_vector_end; extern char *exception_vector, *exception_vector_end;
void __init trap_init(void)
{
return;
}
void __init early_trap_init(void) void __init early_trap_init(void)
{ {
unsigned long ivb = 0; unsigned long ivb = 0;

View File

@ -105,11 +105,6 @@ void show_stack(struct task_struct *task, unsigned long *stack,
printk("%s\n", loglvl); printk("%s\n", loglvl);
} }
void __init trap_init(void)
{
/* Nothing to do here */
}
/* Breakpoint handler */ /* Breakpoint handler */
asmlinkage void breakpoint_c(struct pt_regs *fp) asmlinkage void breakpoint_c(struct pt_regs *fp)
{ {

View File

@ -231,11 +231,6 @@ void unhandled_exception(struct pt_regs *regs, int ea, int vector)
die("Oops", regs, 9); die("Oops", regs, 9);
} }
void __init trap_init(void)
{
/* Nothing needs to be done */
}
asmlinkage void do_trap(struct pt_regs *regs, unsigned long address) asmlinkage void do_trap(struct pt_regs *regs, unsigned long address)
{ {
force_sig_fault(SIGTRAP, TRAP_BRKPT, (void __user *)regs->pc); force_sig_fault(SIGTRAP, TRAP_BRKPT, (void __user *)regs->pc);

View File

@ -859,7 +859,3 @@ void __init early_trap_init(void)
initialize_ivt(&fault_vector_20); initialize_ivt(&fault_vector_20);
} }
void __init trap_init(void)
{
}

View File

@ -2215,11 +2215,6 @@ DEFINE_INTERRUPT_HANDLER(kernel_bad_stack)
die("Bad kernel stack pointer", regs, SIGABRT); die("Bad kernel stack pointer", regs, SIGABRT);
} }
void __init trap_init(void)
{
}
#ifdef CONFIG_PPC_EMULATED_STATS #ifdef CONFIG_PPC_EMULATED_STATS
#define WARN_EMULATED_SETUP(type) .type = { .name = #type } #define WARN_EMULATED_SETUP(type) .type = { .name = #type }

View File

@ -199,11 +199,6 @@ int is_valid_bugaddr(unsigned long pc)
} }
#endif /* CONFIG_GENERIC_BUG */ #endif /* CONFIG_GENERIC_BUG */
/* stvec & scratch is already set from head.S */
void __init trap_init(void)
{
}
#ifdef CONFIG_VMAP_STACK #ifdef CONFIG_VMAP_STACK
static DEFINE_PER_CPU(unsigned long [OVERFLOW_STACK_SIZE/sizeof(long)], static DEFINE_PER_CPU(unsigned long [OVERFLOW_STACK_SIZE/sizeof(long)],
overflow_stack)__aligned(16); overflow_stack)__aligned(16);

View File

@ -311,7 +311,3 @@ void winch(int sig, struct siginfo *unused_si, struct uml_pt_regs *regs)
{ {
do_IRQ(WINCH_IRQ, regs); do_IRQ(WINCH_IRQ, regs);
} }
void trap_init(void)
{
}

View File

@ -777,6 +777,8 @@ void __init __weak poking_init(void) { }
void __init __weak pgtable_cache_init(void) { } void __init __weak pgtable_cache_init(void) { }
void __init __weak trap_init(void) { }
bool initcall_debug; bool initcall_debug;
core_param(initcall_debug, initcall_debug, bool, 0644); core_param(initcall_debug, initcall_debug, bool, 0644);