xref: /openbmc/linux/arch/x86/lib/error-inject.c (revision 31eeb6b0)
1 // SPDX-License-Identifier: GPL-2.0
2 
3 #include <linux/linkage.h>
4 #include <linux/error-injection.h>
5 #include <linux/kprobes.h>
6 
7 asmlinkage void just_return_func(void);
8 
9 asm(
10 	".text\n"
11 	".type just_return_func, @function\n"
12 	".globl just_return_func\n"
13 	"just_return_func:\n"
14 		ASM_RET
15 	".size just_return_func, .-just_return_func\n"
16 );
17 
18 void override_function_with_return(struct pt_regs *regs)
19 {
20 	regs->ip = (unsigned long)&just_return_func;
21 }
22 NOKPROBE_SYMBOL(override_function_with_return);
23