.gitignore: ignore local vscode workspace settings file
[lttng-tools.git] / tests / utils / testapp / userspace-probe-sdt-binary / userspace-probe-sdt-binary.c
index 45eec1203128b9d82d1138e9301e2bc4c3c08124..551b42b5a7e33310dd783b6a897de180fa48ea2d 100644 (file)
@@ -9,6 +9,19 @@
 #define _GNU_SOURCE
 #endif
 
+/*
+ * The order of inclusion is important here: including sdt.h _before_ the probe
+ * declarations ensures that semaphore-protected SDT probes (which we don't support) are not
+ * generated. See SYSTEMTAP(2) for more details.
+ */
+/* clang-format off */
+#include <sys/sdt.h>
+#include "foobar_provider.h"
+/* clang-format on */
+
+#include "libfoo.h"
+#include "sema.h"
+
 #include <dlfcn.h>
 #include <fcntl.h>
 #include <stdbool.h>
 #include <sys/stat.h>
 #include <sys/types.h>
 
-#include <sys/sdt.h>
-
-#include "foobar_provider.h"
-#include "libfoo.h"
-#include "sema.h"
-
 int main(int argc, char *argv[])
 {
        void *handle;
@@ -31,16 +38,16 @@ int main(int argc, char *argv[])
        FOOBAR_TP1();
        FOOBAR_TP2();
        /*
-        * This SDT tracepoint has an argument. Argument extraction is not support
-        * at the moment but tracing of the tracepoint should work.
+        * This SDT tracepoint has an argument. Argument extraction is not supported
+        * at the moment, but tracing of the tracepoint should work.
         */
        FOOBAR_TP_WITH_ARG(42);
 
-       /* Call function containing an SDT tracepoint in shared object */
+       /* Call a function containing an SDT tracepoint in shared object. */
        foo_function();
 
        /*
-        * Load a show shared object and call a function containing an SDT
+        * Load a shared object and call a function containing an SDT
         * tracepoint
         */
        handle = dlopen("libbar.so", RTLD_LAZY);
@@ -48,16 +55,16 @@ int main(int argc, char *argv[])
                fprintf(stderr, "Can't dlopen libbar.so");
                return -1;
        }
-       bar_function = (void (*)())dlsym(handle, "bar_function");
+       bar_function = (void (*)()) dlsym(handle, "bar_function");
        bar_function();
        dlclose(handle);
 
-       /* This tracepoint has 2 callsites in this binary */
+       /* This tracepoint has 2 call sites in this binary. */
        FOOBAR_TP2();
 
        /*
-        * This function is defined in libfoo AND in libzzz. For a test, libzzz is
-        * LD_PRELOADed and should override this function
+        * This function is defined in libfoo and in libzzz. For a test, libzzz is
+        * LD_PRELOADed and should override this function.
         */
        overridable_function();
 
@@ -68,4 +75,3 @@ int main(int argc, char *argv[])
        sema_function();
        return 0;
 }
-
This page took 0.041142 seconds and 4 git commands to generate.