[PATCH v1] perf inject: With --convert-callchain ignore the dummy event for dwarf stacks

Ian Rogers posted 1 patch 2 weeks, 2 days ago
tools/perf/builtin-inject.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH v1] perf inject: With --convert-callchain ignore the dummy event for dwarf stacks
Posted by Ian Rogers 2 weeks, 2 days ago
On hybrid systems there is generally >1 event and a dummy event. The
perf inject --convert-callchain option is failing to convert perf.data
files on such systems reporting "--convert-callchain requires DWARF
call graph." The failing event is the dummy event that doesn't need to
be set up for samples. As such ignore this event when checking the
evsels.

Fixes: 92ea788d2af4 ("perf inject: Add --convert-callchain option")
Signed-off-by: Ian Rogers <irogers@google.com>
---
 tools/perf/builtin-inject.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
index c89ac85ec112..ea3ac35256ce 100644
--- a/tools/perf/builtin-inject.c
+++ b/tools/perf/builtin-inject.c
@@ -2727,7 +2727,7 @@ int cmd_inject(int argc, const char **argv)
 		}
 
 		evlist__for_each_entry(inject.session->evlist, evsel) {
-			if (!evsel__has_dwarf_callchain(evsel)) {
+			if (!evsel__has_dwarf_callchain(evsel) && !evsel__is_dummy_event(evsel)) {
 				pr_err("--convert-callchain requires DWARF call graph.\n");
 				goto out_delete;
 			}
-- 
2.52.0.457.g6b5491de43-goog
Re: [PATCH v1] perf inject: With --convert-callchain ignore the dummy event for dwarf stacks
Posted by Arnaldo Carvalho de Melo 2 weeks, 1 day ago
On Thu, Jan 22, 2026 at 09:58:46AM -0800, Ian Rogers wrote:
> On hybrid systems there is generally >1 event and a dummy event. The
> perf inject --convert-callchain option is failing to convert perf.data
> files on such systems reporting "--convert-callchain requires DWARF
> call graph." The failing event is the dummy event that doesn't need to
> be set up for samples. As such ignore this event when checking the
> evsels.
> 
> Fixes: 92ea788d2af4 ("perf inject: Add --convert-callchain option")



Thanks, applied to perf-tools-next,

- Arnaldo

> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/perf/builtin-inject.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
> index c89ac85ec112..ea3ac35256ce 100644
> --- a/tools/perf/builtin-inject.c
> +++ b/tools/perf/builtin-inject.c
> @@ -2727,7 +2727,7 @@ int cmd_inject(int argc, const char **argv)
>  		}
>  
>  		evlist__for_each_entry(inject.session->evlist, evsel) {
> -			if (!evsel__has_dwarf_callchain(evsel)) {
> +			if (!evsel__has_dwarf_callchain(evsel) && !evsel__is_dummy_event(evsel)) {
>  				pr_err("--convert-callchain requires DWARF call graph.\n");
>  				goto out_delete;
>  			}
> -- 
> 2.52.0.457.g6b5491de43-goog