On Fri, Nov 19, 2021 at 11:46:31PM +0100, jim.cromie@gmail.com wrote:
Vincent's code has the macro magic to define that event, which IIUC is what makes it controllable by ftrace, and therefore acceptable in principle to Steve. Would there be any reason to expand his set of 2 events into dev_dbg, pr_debug etc varieties ? (ie any value to separating dev, !dev ?, maybe so
Sean's code uses trace_array_printk primarily, which is EXPORTed, which is a virtue.
Vincents code does +/*
- This code is heavily based on __ftrace_trace_stack().
- Allow 4 levels of nesting: normal, softirq, irq, NMI.
- */
to implement
+static void dynamic_trace(const char *fmt, va_list args)
Has this __ftrace_trace_stack() code been bundled into or hidden under a supported interface ?
would it look anything like trace_array_printk() ?
what problem is that code solving inside dynamic-debug.c ?
I'm not sure I fully understand all of your questions, but perhaps this thread with Steven's reply to the first version of my patchset will answer some of them:
https://lore.kernel.org/lkml/20200723112644.7759f82f@oasis.local.home/