[lttng-dev] [PATCH lttng-modules] Move pipe override to the arch specific pointers_override.h
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Wed Sep 9 12:18:56 EDT 2015
merged into master and stable-2.7, thanks!
Mathieu
----- On Sep 8, 2015, at 9:20 AM, Lars Persson lars.persson at axis.com wrote:
> 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
>
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list