[lttng-dev] [PATCH lttng-modules] Move pipe override to the arch specific pointers_override.h
Lars Persson
lars.persson at axis.com
Tue Sep 8 09:20:15 EDT 2015
The MIPS architecture has a non-standard calling convention for pipe()
and cannot use the provided override for the pipe event.
Signed-off-by: Lars Persson <larper at axis.com>
---
.../headers/arm-32-syscalls-3.4.25_pointers_override.h | 9 +++++++++
.../headers/powerpc-32-syscalls-3.0.34_pointers_override.h | 9 +++++++++
instrumentation/syscalls/headers/syscalls_pointers_override.h | 10 ----------
.../headers/x86-32-syscalls-3.1.0-rc6_pointers_override.h | 10 ++++++++++
.../headers/x86-64-syscalls-3.10.0-rc7_pointers_override.h | 9 +++++++++
5 files changed, 37 insertions(+), 10 deletions(-)
diff --git a/instrumentation/syscalls/headers/arm-32-syscalls-3.4.25_pointers_override.h b/instrumentation/syscalls/headers/arm-32-syscalls-3.4.25_pointers_override.h
index d515e1d..b27eedb 100644
--- a/instrumentation/syscalls/headers/arm-32-syscalls-3.4.25_pointers_override.h
+++ b/instrumentation/syscalls/headers/arm-32-syscalls-3.4.25_pointers_override.h
@@ -18,6 +18,15 @@ SC_LTTNG_TRACEPOINT_EVENT(mmap2,
)
)
+#define OVERRIDE_32_pipe
+SC_LTTNG_TRACEPOINT_EVENT(pipe,
+ TP_PROTO(sc_exit(long ret,) int * fildes),
+ TP_ARGS(sc_exit(ret,) fildes),
+ TP_FIELDS(sc_exit(ctf_integer(long, ret, ret))
+ sc_out(ctf_user_array(int, fildes, fildes, 2))
+ )
+)
+
#else /* CREATE_SYSCALL_TABLE */
#define OVERRIDE_TABLE_32_execve
diff --git a/instrumentation/syscalls/headers/powerpc-32-syscalls-3.0.34_pointers_override.h b/instrumentation/syscalls/headers/powerpc-32-syscalls-3.0.34_pointers_override.h
index b9e83bc..1fd3ec4 100644
--- a/instrumentation/syscalls/headers/powerpc-32-syscalls-3.0.34_pointers_override.h
+++ b/instrumentation/syscalls/headers/powerpc-32-syscalls-3.0.34_pointers_override.h
@@ -16,6 +16,15 @@ SC_LTTNG_TRACEPOINT_EVENT(mmap2,
)
)
+#define OVERRIDE_32_pipe
+SC_LTTNG_TRACEPOINT_EVENT(pipe,
+ TP_PROTO(sc_exit(long ret,) int * fildes),
+ TP_ARGS(sc_exit(ret,) fildes),
+ TP_FIELDS(sc_exit(ctf_integer(long, ret, ret))
+ sc_out(ctf_user_array(int, fildes, fildes, 2))
+ )
+)
+
#else /* CREATE_SYSCALL_TABLE */
#define OVERRIDE_TABLE_32_execve
diff --git a/instrumentation/syscalls/headers/syscalls_pointers_override.h b/instrumentation/syscalls/headers/syscalls_pointers_override.h
index a552908..c9478f4 100644
--- a/instrumentation/syscalls/headers/syscalls_pointers_override.h
+++ b/instrumentation/syscalls/headers/syscalls_pointers_override.h
@@ -41,16 +41,6 @@ SC_LTTNG_TRACEPOINT_EVENT(getcpu,
)
)
-#define OVERRIDE_32_pipe
-#define OVERRIDE_64_pipe
-SC_LTTNG_TRACEPOINT_EVENT(pipe,
- TP_PROTO(sc_exit(long ret,) int * fildes),
- TP_ARGS(sc_exit(ret,) fildes),
- TP_FIELDS(sc_exit(ctf_integer(long, ret, ret))
- sc_out(ctf_user_array(int, fildes, fildes, 2))
- )
-)
-
#define OVERRIDE_32_pipe2
#define OVERRIDE_64_pipe2
SC_LTTNG_TRACEPOINT_EVENT(pipe2,
diff --git a/instrumentation/syscalls/headers/x86-32-syscalls-3.1.0-rc6_pointers_override.h b/instrumentation/syscalls/headers/x86-32-syscalls-3.1.0-rc6_pointers_override.h
index 05c8e21..7c804a6 100644
--- a/instrumentation/syscalls/headers/x86-32-syscalls-3.1.0-rc6_pointers_override.h
+++ b/instrumentation/syscalls/headers/x86-32-syscalls-3.1.0-rc6_pointers_override.h
@@ -10,6 +10,16 @@
# define OVERRIDE_32_chown16
# endif
+#define OVERRIDE_32_pipe
+#define OVERRIDE_64_pipe
+SC_LTTNG_TRACEPOINT_EVENT(pipe,
+ TP_PROTO(sc_exit(long ret,) int * fildes),
+ TP_ARGS(sc_exit(ret,) fildes),
+ TP_FIELDS(sc_exit(ctf_integer(long, ret, ret))
+ sc_out(ctf_user_array(int, fildes, fildes, 2))
+ )
+)
+
#else /* CREATE_SYSCALL_TABLE */
# ifndef CONFIG_UID16
diff --git a/instrumentation/syscalls/headers/x86-64-syscalls-3.10.0-rc7_pointers_override.h b/instrumentation/syscalls/headers/x86-64-syscalls-3.10.0-rc7_pointers_override.h
index af519cd..702cfb5 100644
--- a/instrumentation/syscalls/headers/x86-64-syscalls-3.10.0-rc7_pointers_override.h
+++ b/instrumentation/syscalls/headers/x86-64-syscalls-3.10.0-rc7_pointers_override.h
@@ -106,6 +106,15 @@ SC_LTTNG_TRACEPOINT_EVENT_CODE(accept,
)
)
+#define OVERRIDE_64_pipe
+SC_LTTNG_TRACEPOINT_EVENT(pipe,
+ TP_PROTO(sc_exit(long ret,) int * fildes),
+ TP_ARGS(sc_exit(ret,) fildes),
+ TP_FIELDS(sc_exit(ctf_integer(long, ret, ret))
+ sc_out(ctf_user_array(int, fildes, fildes, 2))
+ )
+)
+
#else /* CREATE_SYSCALL_TABLE */
#define OVERRIDE_TABLE_64_clone
--
2.1.4
More information about the lttng-dev
mailing list