Junio C Hamano <gitster@xxxxxxxxx> writes: > gennady.kupava@xxxxxxxxx writes: > >> From: Gennady Kupava <gkupava@xxxxxxxxxxxxx> >> >> - Do the check if the trace key is enabled sooner in call chain. >> - Move just enough code from trace.c into trace.h header so all code >> necessary to determine that trace is disabled could be inlined to >> calling functions. > > Makes sense. Will queue. > > Thanks. Just in case others notice style and whitespace issues, I've applied the following to fix them, so there is no need to reroll only to fix these. diff --git a/trace.h b/trace.h index db10f2afeb..05395242aa 100644 --- a/trace.h +++ b/trace.h @@ -85,29 +85,29 @@ extern void trace_performance_since(uint64_t start, const char *format, ...); if (trace_pass_fl(key)) \ trace_printf_key_fl(TRACE_CONTEXT, __LINE__, key, \ __VA_ARGS__); \ - } while(0) + } 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__, \ + trace_argv_printf_fl(TRACE_CONTEXT, __LINE__, \ argv, __VA_ARGS__); \ - } while(0) + } while (0) #define trace_strbuf(key, data) \ do { \ if (trace_pass_fl(key)) \ trace_strbuf_fl(TRACE_CONTEXT, __LINE__, key, data);\ - } while(0) + } while (0) #define trace_performance(nanos, ...) \ do { \ if (trace_pass_fl(&trace_perf_key)) \ trace_performance_fl(TRACE_CONTEXT, __LINE__, nanos,\ - __VA_ARGS__); \ - } while(0) + __VA_ARGS__); \ + } while (0) #define trace_performance_since(start, ...) \ do { \ @@ -115,7 +115,7 @@ extern void trace_performance_since(uint64_t start, const char *format, ...); trace_performance_fl(TRACE_CONTEXT, __LINE__, \ getnanotime() - (start), \ __VA_ARGS__); \ - } while(0) + } while (0) /* backend functions, use non-*fl macros instead */ __attribute__((format (printf, 4, 5))) @@ -129,7 +129,8 @@ extern void trace_strbuf_fl(const char *file, int line, struct trace_key *key, __attribute__((format (printf, 4, 5))) extern void trace_performance_fl(const char *file, int line, uint64_t nanos, const char *fmt, ...); -inline int trace_pass_fl(struct trace_key *key) { +inline int trace_pass_fl(struct trace_key *key) +{ return key->fd || !key->initialized; }