Messages in this thread | | | Date | Thu, 7 Oct 2021 09:20:26 -0400 | From | Steven Rostedt <> | Subject | Re: Reason for unused flags argument in trace_raw_output_* function? |
| |
On Wed, 6 Oct 2021 23:49:22 -0400 William Cohen <wcohen@redhat.com> wrote:
> Hi, > > I have some code that analyzes x86_64 binaries > (https://developers.redhat.com/articles/2021/08/09/debugging-function-parameters- > dyninst#liveness_analysis) and list which function parameters are unused. > I noticed that trace_raw_output_* functions have an unused flags > argument. I assume this is is to make the argument list match up with > some other function, but I couldn't see which function(s) the > trace_raw_output_* functions are trying to match up with. Which > functions are the trace_raw_output_* function's arguments trying to match? >
The match of other printing functions is in kernel/trace/trace_output.c
And is called from kernel/trace/trace.c where one place it does pass in flags:
static enum print_line_t print_trace_fmt(struct trace_iterator *iter) { [..] if (event) return event->funcs->trace(iter, sym_flags, event);
Now if they are still used, is something we should investigate.
This code has changed a lot over the years when that "flags" parameter was introduced. It could now just be a relic from the old implementations.
Thanks for pointing this out. If I get time I'll look deeper into it, but feel free to look at it yourself.
-- Steve
| |