| Date | Mon, 6 Nov 2023 19:45:00 -0500 | From | Steven Rostedt <> | Subject | Re: [PATCH v1 06/12] trace: use TP_printk_no_nl in dyndbg:prdbg,devdbg |
| |
On Fri, 3 Nov 2023 14:10:05 +0100 Łukasz Bartosik <lb@semihalf.com> wrote:
> index ccc5bcb070f9..91dcdbe059c0 100644 > --- a/include/trace/events/dyndbg.h > +++ b/include/trace/events/dyndbg.h > @@ -20,20 +20,10 @@ TRACE_EVENT(prdbg, > > TP_fast_assign( > __entry->desc = desc; > - /* > - * Each trace entry is printed in a new line. > - * If the msg finishes with '\n', cut it off > - * to avoid blank lines in the trace. > - */ > - if (len > 0 && (text[len - 1] == '\n')) > - len -= 1; > - > memcpy(__get_str(msg), text, len); > - __get_str(msg)[len] = 0; > ), > > - TP_printk("%s.%s %s", __entry->desc->modname, > - __entry->desc->function, __get_str(msg)) > + TP_printk_no_nl("%s", __get_str(msg)) > ); >
Instead of adding the TP_printk_no_nl() (Which I still do not like), we could add a:
__get_str_strip_nl(msg)
That will do the above loop. Which will move the processing to read side (slow path).
And then we could update libtraceevent to handle that too.
-- Steve
|