linux/arch
Josef Bacik dd0bb688ea bpf: add a bpf_override_function helper
Error injection is sloppy and very ad-hoc.  BPF could fill this niche
perfectly with it's kprobe functionality.  We could make sure errors are
only triggered in specific call chains that we care about with very
specific situations.  Accomplish this with the bpf_override_funciton
helper.  This will modify the probe'd callers return value to the
specified value and set the PC to an override function that simply
returns, bypassing the originally probed function.  This gives us a nice
clean way to implement systematic error injection for all of our code
paths.

Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Josef Bacik <jbacik@fb.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-11-11 12:18:05 +09:00
..
alpha License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
arc License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
arm Merge branch 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm 2017-11-04 14:26:30 -07:00
arm64 Fixes for interrupt controller emulation in ARM/ARM64 and x86, plus a one-liner 2017-11-04 11:44:55 -07:00
blackfin Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-11-04 09:26:51 +09:00
c6x License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
cris License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
frv License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
h8300 License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
hexagon License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
ia64 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-11-05 12:14:50 -08:00
m32r License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
m68k License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
metag License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
microblaze License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
mips MIPS fixes for 4.14 2017-11-04 11:31:02 -07:00
mn10300 License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
nios2 License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
openrisc License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
parisc License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
powerpc powerpc fixes for 4.14 #6 2017-11-03 09:25:53 -07:00
s390 License cleanup: add SPDX license identifiers to some files 2017-11-02 10:04:46 -07:00
score License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
sh License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
sparc License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
tile Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile 2017-11-03 10:36:43 -07:00
um Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-11-04 09:26:51 +09:00
unicore32 License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
x86 bpf: add a bpf_override_function helper 2017-11-11 12:18:05 +09:00
xtensa License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
.gitignore
Kconfig bpf: add a bpf_override_function helper 2017-11-11 12:18:05 +09:00