On Thu, 13 Nov 2025 09:48:52 +0800 Donglin Peng <[email protected]> wrote:
> I noticed that when funcgraph-args is enabled, it registers > trace_graph_entry_args > to replace trace_graph_entry. The only difference is whether a valid > fregs pointer > is passed. > > To reduce overhead, I propose consolidating the two entry functions. We could > maintain only trace_graph_entry and pass the fregs parameter to graph_entry. > Within __graph_entry, we can then conditionally record arguments based on > 'TRACE_GRAPH_ARGS && !!fregs'. What overhead are you reducing? Why add a branch statement in a critical path? The graph_entry() should not be looking at the flags argument. It's called by *every function*. Also note, I recently fixed the flags to be per instance and not global. Which means testing the flags would require indirection lookups. -- Steve
