[Bug translator/32767] New: Improve tracepoint discovery

wcohen at redhat dot com sourceware-bugzilla@sourceware.org
Fri Mar 7 00:12:21 GMT 2025


https://sourceware.org/bugzilla/show_bug.cgi?id=32767

            Bug ID: 32767
           Summary: Improve tracepoint discovery
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: translator
          Assignee: systemtap at sourceware dot org
          Reporter: wcohen at redhat dot com
  Target Milestone: ---

When running the systemtap testsuite there are a number of tracepoints
systemtap does not find during systemtap.base/tracepoints_list.exp.  On
systemtap f41 test results can see >1100 failures vs ~150 test passes
(https://builder.sourceware.org/testrun/16e3ea076cbb6ff295b05b9b3453962b8c36d0de?focus=dejagnu&perPage=500)

Looking through the results of the following output to find out why the
specific C tracepoint querying code failed to build:

../install/bin/stap -k --disable-cache -vvvvv  -L 'kernel.trace("sys_enter")'
>& bad4.log

See 5 common ways that the test C code fails and the tracepoints cannot be
discovered for that particular header in the kernel's include/trace/events
directory.

-relative path to include files
   13 | #include "../../../fs/dlm/dlm_internal.h"

   wondering could with this to work by having additional nested dummy
directories and a symbolic link to the appropriate place in the kernel source
code so  "../../../fs/dlm/dlm_internal.h" points at the appropriate directory.

-missing TRACE_INCLUDE_FILE macro definition
  ‘#include’ expects ‘"FILENAME"’ or ‘<FILENAME>’
  131 | #include TRACE_INCLUDE(TRACE_INCLUDE_FILE)
      |          ^~~~~~~~~~~~~

   look like TRACE_INCLUDE(system) gets turned into either:
   <trace/events/system.h>
   or
   TRACE_INCLUDE_PATH/system.h

   Given the stripped down nature of the C query code it might be possible just
to undefine TRACE_INCLUDE.

-undefined types because test code doesn't include file with type declarations

-declared inside parameter list will not be visible outside of thise definition
or declaration (could this be turned off with flags?)

-conflicting types for stapprobe_##name() parameters

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Systemtap mailing list