Disable mmap bitwise enum in default build
authorMichael Jeanson <mjeanson@efficios.com>
Wed, 12 May 2021 18:20:44 +0000 (14:20 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Thu, 13 May 2021 15:47:41 +0000 (11:47 -0400)
Only generate the bitwise enumerations when
CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM is enabled, so the default build
does not generate traces which lead to warnings when viewed with
babeltrace 1.x and babeltrace 2 with default options.

Original commit:

  commit 3cf55950d0f6aa43eb5ad119bad1dbda69f75a54
  Author: Francis Deslauriers <francis.deslauriers@efficios.com>
  Date:   Fri Jun 5 11:38:14 2020 -0400

    syscalls: Make mmap()'s fields `prot` and `flags` enums

Change-Id: I033f42855c2967356b1e90cd89450eb5100a0f0b
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
include/instrumentation/syscalls/headers/syscalls_integers_override.h

index 5d5d7a53db225757fc34e5f743452cd384109a62..eb0cf80f7c94e01cf996eb1bc9b7f00de9e2e3d8 100644 (file)
@@ -2,6 +2,8 @@
 
 #ifndef CREATE_SYSCALL_TABLE
 
+#ifdef CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM
+
 /*
  * The `flags` argument of the mmap syscall is split in two parts:
  * - The type of mapping is described by the four least significant bits of the 4
@@ -113,10 +115,8 @@ lttng_kernel_static_event_field_array(             \
 )
 #endif
 
-/*
- * Use a custom field here so that tracer writes a single integer and the
- * work of splitting it up in two fields is left to the trace reader.
- */
+#endif /* CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM */
+
 #define OVERRIDE_32_mmap
 #define OVERRIDE_64_mmap
 SC_LTTNG_TRACEPOINT_EVENT(mmap,
@@ -128,6 +128,12 @@ SC_LTTNG_TRACEPOINT_EVENT(mmap,
        TP_FIELDS(sc_exit(ctf_integer_hex(unsigned long, ret, ret))
                sc_in(ctf_integer_hex(unsigned long, addr, addr))
                sc_in(ctf_integer(size_t, len, len))
+#ifdef CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM
+               /*
+                * Use a custom field here so that tracer writes a single
+                * integer and the work of splitting it up in two fields is
+                * left to the trace reader.
+                */
                sc_in(ctf_enum(lttng_mmap_protection, int, prot, prot))
                sc_in(
                        ctf_custom_field(
@@ -140,6 +146,10 @@ SC_LTTNG_TRACEPOINT_EVENT(mmap,
                                )
                        )
                )
+#else
+               sc_in(ctf_integer(int, prot, prot))
+               sc_in(ctf_integer(int, flags, flags))
+#endif /* CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM */
                sc_in(ctf_integer(int, fd, fd))
                sc_in(ctf_integer(off_t, offset, off))
        )
This page took 0.030761 seconds and 4 git commands to generate.