[ping3][PATCH 04/19] Use MODULE_NAME in stap-probe instead of IN_LIB
Siddhesh Poyarekar
siddhesh@redhat.com
Wed Oct 1 08:19:00 GMT 2014
Rebased against current master and the patch is unchanged.
Ping!
Siddhesh
On Wed, Sep 17, 2014 at 06:17:16PM +0530, Siddhesh Poyarekar wrote:
> Rebased on top of latest master. No changes to the patch.
>
> Siddhesh
>
> From b3ae47d0b34aa5d0366cf27cb944aa008e069186 Mon Sep 17 00:00:00 2001
> From: Siddhesh Poyarekar <siddhesh@redhat.com>
> Date: Thu, 21 Aug 2014 11:55:35 +0530
> Subject: [PATCH] Use MODULE_NAME in stap-probe instead of IN_LIB
>
> Verified that the generated code is unchanged on x86_64.
>
> * scripts/gen-libc-modules.awk (END): Generate defines for
> MODULE_NAME.
> * include/stap-probe.h (LIBC_PROBE_1): Use MODULE_NAME instead
> of IN_LIB.
> (STAP_PROBE_ASM): Likewise.
> ---
> include/stap-probe.h | 6 +++---
> scripts/gen-libc-modules.awk | 9 ++++++++-
> 2 files changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/include/stap-probe.h b/include/stap-probe.h
> index 688646c..150fc1e 100644
> --- a/include/stap-probe.h
> +++ b/include/stap-probe.h
> @@ -30,7 +30,7 @@
>
> Systemtap's header defines the macros STAP_PROBE (provider, name) and
> STAP_PROBEn (provider, name, arg1, ..., argn). For "provider" we paste
> - in the IN_LIB name (libc, libpthread, etc.) automagically.
> + in MODULE_NAME (libc, libpthread, etc.) automagically.
>
> The format of the arg parameters is discussed here:
>
> @@ -53,7 +53,7 @@
> # endif
>
> # define LIBC_PROBE(name, n, ...) \
> - LIBC_PROBE_1 (IN_LIB, name, n, ## __VA_ARGS__)
> + LIBC_PROBE_1 (MODULE_NAME, name, n, ## __VA_ARGS__)
>
> # define LIBC_PROBE_1(lib, name, n, ...) \
> STAP_PROBE##n (lib, name, ## __VA_ARGS__)
> @@ -61,7 +61,7 @@
> # define STAP_PROBE0 STAP_PROBE
>
> # define LIBC_PROBE_ASM(name, template) \
> - STAP_PROBE_ASM (IN_LIB, name, template)
> + STAP_PROBE_ASM (MODULE_NAME, name, template)
>
> # define LIBC_PROBE_ASM_OPERANDS STAP_PROBE_ASM_OPERANDS
>
> diff --git a/scripts/gen-libc-modules.awk b/scripts/gen-libc-modules.awk
> index d3382b6..1ae4af3 100644
> --- a/scripts/gen-libc-modules.awk
> +++ b/scripts/gen-libc-modules.awk
> @@ -32,9 +32,16 @@ match (FILENAME, ".*soversions.i") {
>
> # Finally, print out the header file.
> END {
> - printf ("/* AUTOGENERATED BY gen-libc-modules.awk, DO NOT EDIT. */\n\n")
> + printf ("/* AUTOGENERATED BY gen-libc-modules.awk, DO NOT EDIT. */\n")
> i = 1
> + print ("\n/* Allowed values for IN_MODULE. */")
> for (l in libs) {
> printf ("#define MODULE_%s %d\n", l, libs[l])
> }
> + print ("\n/* Module names, used in stap-probe.h */")
> + for (l in libs) {
> + printf ("#if IN_MODULE == MODULE_%s\n", l)
> + printf ("# define MODULE_NAME %s\n", l)
> + printf ("#endif\n")
> + }
> }
> --
> 1.9.3
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 473 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20141001/68ed6bfa/attachment.sig>
More information about the Libc-alpha
mailing list