Thread (13 messages) 13 messages, 4 authors, 2017-11-30

Re: [PATCH v7 1/5] add infrastructure for tagging functions as error injectable

flat view

From: Josef Bacik <josef@toxicpanda.com>
Date: 2017-11-28 20:02:47
Also in: linux-btrfs, lkml

On Tue, Nov 28, 2017 at 11:58:41AM -0700, Jonathan Corbet wrote:
On Wed, 22 Nov 2017 16:23:30 -0500
Josef Bacik [off-list ref] wrote:
quoted
From: Josef Bacik <redacted>

Using BPF we can override kprob'ed functions and return arbitrary
values.  Obviously this can be a bit unsafe, so make this feature opt-in
for functions.  Simply tag a function with KPROBE_ERROR_INJECT_SYMBOL in
order to give BPF access to that function for error injection purposes.

Signed-off-by: Josef Bacik <redacted>
Acked-by: Ingo Molnar <mingo@kernel.org>
---
 arch/x86/include/asm/asm.h        |   6 ++
 include/asm-generic/vmlinux.lds.h |  10 +++
 include/linux/bpf.h               |  11 +++
 include/linux/kprobes.h           |   1 +
 include/linux/module.h            |   5 ++
 kernel/kprobes.c                  | 163 ++++++++++++++++++++++++++++++++++++++
 kernel/module.c                   |   6 +-
 7 files changed, 201 insertions(+), 1 deletion(-)
diff --git a/arch/x86/include/asm/asm.h b/arch/x86/include/asm/asm.h
index b0dc91f4bedc..340f4cc43255 100644
--- a/arch/x86/include/asm/asm.h
+++ b/arch/x86/include/asm/asm.h
@@ -85,6 +85,12 @@
 	_ASM_PTR (entry);					\
 	.popsection
 
+# define _ASM_KPROBE_ERROR_INJECT(entry)			\
+	.pushsection "_kprobe_error_inject_list","aw" ;		\
+	_ASM_ALIGN ;						\
+	_ASM_PTR (entry);					\
+	.popseciton
So this stuff is not my area of greatest expertise, but I do have to wonder
how ".popseciton" can work ... ?
Well fuck, do you want me to send a increment Daniel/Alexei or resend this patch
fixed?  Thanks,

Josef
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help