projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d21fbce
)
libbpf: Define i386 syscall regs spec in bpf_tracing.h
author
Andrii Nakryiko
<andrii@kernel.org>
Fri, 20 Jan 2023 20:09:03 +0000
(12:09 -0800)
committer
Daniel Borkmann
<daniel@iogearbox.net>
Mon, 23 Jan 2023 19:53:00 +0000
(20:53 +0100)
Define explicit table of registers used for syscall argument passing.
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link:
https://lore.kernel.org/bpf/20230120200914.3008030-15-andrii@kernel.org
tools/lib/bpf/bpf_tracing.h
patch
|
blob
|
history
diff --git
a/tools/lib/bpf/bpf_tracing.h
b/tools/lib/bpf/bpf_tracing.h
index 5fd498821c29dc1fff50668f553af406a88928d4..4d04c63fda27c1248b026ed155d30716f2929c79 100644
(file)
--- a/
tools/lib/bpf/bpf_tracing.h
+++ b/
tools/lib/bpf/bpf_tracing.h
@@
-115,6
+115,14
@@
#define __PT_PARM1_REG eax
#define __PT_PARM2_REG edx
#define __PT_PARM3_REG ecx
+/* i386 syscall ABI is very different, refer to syscall(2) manpage */
+#define __PT_PARM1_SYSCALL_REG ebx
+#define __PT_PARM2_SYSCALL_REG ecx
+#define __PT_PARM3_SYSCALL_REG edx
+#define __PT_PARM4_SYSCALL_REG esi
+#define __PT_PARM5_SYSCALL_REG edi
+#define __PT_PARM6_SYSCALL_REG ebp
+
#define __PT_RET_REG esp
#define __PT_FP_REG ebp
#define __PT_RC_REG eax