On Sun, Aug 30, 2026 at 3:22 AM Steven Rostedt <[email protected]> wrote: > > On Sat, 29 Aug 2026 17:44:18 +0200 > Roman 'Hedin' Storozhenko <[email protected]> wrote: > > > +static __always_inline void > > +riscv_tlb_trace_flush_path(const struct cpumask *cmask, unsigned long > > start, > > + unsigned long size, unsigned long stride, > > + unsigned long asid, bool has_mm, > > + enum riscv_tlb_flush_path path) > > +{ > > + enum riscv_tlb_flush_scope scope; > > + > > + if (!trace_riscv_tlb_flush_path_enabled()) > > + return; > > + > > + scope = riscv_tlb_get_flush_scope(size, stride, has_mm); > > + trace_riscv_tlb_flush_path(start, size, stride, asid, has_mm, cmask, > > + scope, path); > > instead of using two static calls you can use the new: > > trace_call__riscv_tlb_flush_path() > > That is to be used instead of the trace_<event>() if it's behind a > trace_<event>_enabled() check. That is because the > trace_call__<event>() will always trigger the trace event logic because > it should only be called when the trace event was enabled. >
Thanks, Steve. Makes sense. I'll use trace_call__riscv_tlb_flush_path() after the existing enabled check in v2. > -- Steve > > > > +} > > + -- Kind regards, Roman Storozhenko
