Re: [PATCH 2/2] Reduce performance cost of the trace if trace category is disabled
From: Gennady Kupava <hidden>
Date: 2017-11-19 13:24:13
Right, this trace is actually not used anywhere, so only check was compilation. Will fix that. On 19 November 2017 at 08:27, Johannes Sixt [off-list ref] wrote:
Am 19.11.2017 um 01:42 schrieb gennady.kupava@gmail.com:quoted
+#define trace_printf_key(key, ...) \ + do { \ + if (trace_pass_fl(key)) \ + trace_printf_key_fl(TRACE_CONTEXT, __LINE__, key, \ + __VA_ARGS__); \ + } while(0) + +#define trace_printf(...) trace_printf_key(&trace_default_key, __VA_ARGS__); + +#define trace_argv_printf(argv, ...) \ + do { \ + if (trace_pass_fl(&trace_default_key)) \ + trace_argv_printf_fl(TRACE_CONTEXT, __LINE__, \ + argv, __VA_ARGS__); \ + } while(0) + +#define trace_strbuf(key, data) \ + do { \ + if (trace_pass_fl(key)) \ + trace_strbuf_fl(TRACE_CONTEXT, __LINE__, key, data);\ + } while(0) + +#define trace_performance(nanos, ...) \ + do { \ + if (trace_pass_fl(key)) \The token "key" here looks suspicious. Did you mean &trace_perf_key?quoted
+ trace_performance_fl(TRACE_CONTEXT, __LINE__, nanos,\ + __VA_ARGS__); \ + } while(0) + +#define trace_performance_since(start, ...) \ + do { \ + if (trace_pass_fl(&trace_perf_key)) \ + trace_performance_fl(TRACE_CONTEXT, __LINE__, \ + getnanotime() - (start), \ + __VA_ARGS__); \ + } while(0) /* backend functions, use non-*fl macros instead */ __attribute__((format (printf, 4, 5)))-- Hannes