Merge tag 'for-linus-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml
[linux-2.6-microblaze.git] / arch / x86 / lib / error-inject.c
1 // SPDX-License-Identifier: GPL-2.0
2
3 #include <linux/error-injection.h>
4 #include <linux/kprobes.h>
5
6 asmlinkage void just_return_func(void);
7
8 asm(
9         ".text\n"
10         ".type just_return_func, @function\n"
11         ".globl just_return_func\n"
12         "just_return_func:\n"
13         "       ret\n"
14         ".size just_return_func, .-just_return_func\n"
15 );
16
17 void override_function_with_return(struct pt_regs *regs)
18 {
19         regs->ip = (unsigned long)&just_return_func;
20 }
21 NOKPROBE_SYMBOL(override_function_with_return);