perf report: Support switching data w/ and w/o callchains

The symbol_conf.use_callchain should be reset when switching to new data
file, otherwise report__setup_sample_type() will show an error message
that it enabled callchains but no callchain data.  The function also
will turn on the callchains if the data has PERF_SAMPLE_CALLCHAIN so I
think it's ok to reset symbol_conf.use_callchain here.

Link: https://lore.kernel.org/r/20250211060745.294289-2-namhyung@kernel.org
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
Namhyung Kim
2025-02-10 22:07:45 -08:00
parent 43c2b6139b
commit acda4c2001

View File

@@ -1865,6 +1865,11 @@ int cmd_report(int argc, const char **argv)
if (ret == K_SWITCH_INPUT_DATA || ret == K_RELOAD) {
perf_session__delete(session);
last_key = K_SWITCH_INPUT_DATA;
/*
* To support switching between data with and without callchains.
* report__setup_sample_type() will update it properly.
*/
symbol_conf.use_callchain = false;
goto repeat;
} else
ret = 0;