[PATCH 0/2] arm/arm64: Add support for function error injection

From: Leo Yan
Date: Tue Jul 16 2019 - 07:13:21 EST


This small patch set is to add support for function error injection;
this can be used to eanble more advanced debugging feature, e.g.
CONFIG_BPF_KPROBE_OVERRIDE.

I only tested the first patch on arm64 platform Juno-r2 with below
steps; the second patch is for arm arch, but I absent the platform
for the testing so only pass compilation.

- Enable kernel configuration:
CONFIG_BPF_KPROBE_OVERRIDE
CONFIG_BTRFS_FS
CONFIG_BPF_EVENTS=y
CONFIG_KPROBES=y
CONFIG_KPROBE_EVENTS=y
CONFIG_BPF_KPROBE_OVERRIDE=y
- Build samples/bpf on Juno-r2 board with Debian rootFS:
# cd $kernel
# make headers_install
# make samples/bpf/ LLC=llc-7 CLANG=clang-7
- Run the sample tracex7:
# ./tracex7 /dev/sdb1
[ 1975.211781] BTRFS error (device (efault)): open_ctree failed
mount: /mnt/linux-kernel/linux-cs-dev/samples/bpf/tmpmnt: mount(2) system call failed: Cannot allocate memory.


Leo Yan (2):
arm64: Add support for function error injection
arm: Add support for function error injection

arch/arm/Kconfig | 1 +
arch/arm/include/asm/error-injection.h | 13 +++++++++++++
arch/arm/include/asm/ptrace.h | 5 +++++
arch/arm/lib/Makefile | 2 ++
arch/arm/lib/error-inject.c | 19 +++++++++++++++++++
arch/arm64/Kconfig | 1 +
arch/arm64/include/asm/error-injection.h | 13 +++++++++++++
arch/arm64/include/asm/ptrace.h | 5 +++++
arch/arm64/lib/Makefile | 2 ++
arch/arm64/lib/error-inject.c | 19 +++++++++++++++++++
10 files changed, 80 insertions(+)
create mode 100644 arch/arm/include/asm/error-injection.h
create mode 100644 arch/arm/lib/error-inject.c
create mode 100644 arch/arm64/include/asm/error-injection.h
create mode 100644 arch/arm64/lib/error-inject.c

--
2.17.1