tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

usdt.h (801B)


      1 /* Copyright (c) 2020, The Tor Project, Inc. */
      2 /* See LICENSE for licensing information */
      3 
      4 /**
      5 * \file trace.h
      6 * \brief Header for usdt.h
      7 **/
      8 
      9 #ifndef TOR_TRACE_USDT_USDT_H
     10 #define TOR_TRACE_USDT_USDT_H
     11 
     12 #ifdef USE_TRACING_INSTRUMENTATION_USDT
     13 
     14 #ifdef HAVE_SYS_SDT_H
     15 #define SDT_USE_VARIADIC
     16 #include <sys/sdt.h>
     17 #define TOR_STAP_PROBEV STAP_PROBEV
     18 #else /* defined(HAVE_SYS_SDT_H) */
     19 #define TOR_STAP_PROBEV(...)
     20 #endif
     21 
     22 /* Map events to an USDT probe. */
     23 #define TOR_TRACE_USDT(subsystem, event_name, ...) \
     24  TOR_STAP_PROBEV(subsystem, event_name, ## __VA_ARGS__);
     25 
     26 #else /* !defined(USE_TRACING_INSTRUMENTATION_USDT) */
     27 
     28 /* NOP event. */
     29 #define TOR_TRACE_USDT(subsystem, event_name, ...)
     30 
     31 #endif /* !defined(USE_TRACING_INSTRUMENTATION_USDT) */
     32 
     33 #endif /* !defined(TOR_TRACE_USDT_USDT_H) */