From cad220d9ef0a13a0a32ab23e48747c83521f6f8e Mon Sep 17 00:00:00 2001 From: Luke Gorrie Date: Thu, 1 Mar 2018 11:10:44 +0000 Subject: [PATCH] lj_trace.c, lj_auditlog.c: Log auditlog event "trace_flushall" --- src/lj_auditlog.c | 9 +++++++++ src/lj_auditlog.h | 2 +- src/lj_trace.c | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/lj_auditlog.c b/src/lj_auditlog.c index 1c8cc87d8b..d3c470d897 100644 --- a/src/lj_auditlog.c +++ b/src/lj_auditlog.c @@ -198,3 +198,12 @@ void lj_auditlog_new_prototype(GCproto *pt) } } +void lj_auditlog_trace_flushall(jit_State *J) +{ + if (ensure_log_started()) { + log_jit_State(J); + log_event("trace_flushall", 1); + str_16("jit_State"); /* = */ uint_64((uint64_t)J); + } +} + diff --git a/src/lj_auditlog.h b/src/lj_auditlog.h index c1e6bb7a5e..89abf4dd7f 100644 --- a/src/lj_auditlog.h +++ b/src/lj_auditlog.h @@ -12,7 +12,7 @@ int lj_auditlog_open(const char *path); void lj_auditlog_new_prototype(GCproto *pt); void lj_auditlog_lex(const char *chunkname, const char *s, int sz); -void lj_auditlog_trace_flush(jit_State *J); +void lj_auditlog_trace_flushall(jit_State *J); void lj_auditlog_trace_stop(jit_State *J, GCtrace *T); void lj_auditlog_trace_abort(jit_State *J, TraceError e); diff --git a/src/lj_trace.c b/src/lj_trace.c index aaf2b0e07e..19119f38d5 100644 --- a/src/lj_trace.c +++ b/src/lj_trace.c @@ -242,6 +242,7 @@ int lj_trace_flushall(lua_State *L) ptrdiff_t i; if ((J2G(J)->hookmask & HOOK_GC)) return 1; + lj_auditlog_trace_flushall(J); for (i = (ptrdiff_t)J->sizetrace-1; i > 0; i--) { GCtrace *T = traceref(J, i); if (T) {