Commit d5e33ce0 authored by Namhyung Kim's avatar Namhyung Kim Committed by Arnaldo Carvalho de Melo
Browse files

perf srcline: Conditionally suppress addr2line warnings



It has symbol_conf.disable_add2line_warn to suppress some warnings.  Let's
make it consistent with others.

Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
Acked-by: default avatarIan Rogers <irogers@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Milian Wolff <milian.wolff@kdab.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20221215192817.2734573-6-namhyung@kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 3b27222d
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -573,12 +573,14 @@ static int addr2line(const char *dso_name, u64 addr,
	 * "??"/"??:0" lines.
	 */
	if (fprintf(a2l->to_child, "%016"PRIx64"\n,\n", addr) < 0 || fflush(a2l->to_child) != 0) {
		if (!symbol_conf.disable_add2line_warn)
			pr_warning("%s %s: could not send request\n", __func__, dso_name);
		goto out;
	}

	switch (read_addr2line_record(a2l, &record_function, &record_filename, &record_line_nr)) {
	case -1:
		if (!symbol_conf.disable_add2line_warn)
			pr_warning("%s %s: could not read first record\n", __func__, dso_name);
		goto out;
	case 0:
@@ -588,12 +590,15 @@ static int addr2line(const char *dso_name, u64 addr,
		 */
		switch (read_addr2line_record(a2l, NULL, NULL, NULL)) {
		case -1:
			pr_warning("%s %s: could not read delimiter record\n", __func__, dso_name);
			if (!symbol_conf.disable_add2line_warn)
				pr_warning("%s %s: could not read delimiter record\n",
					   __func__, dso_name);
			break;
		case 0:
			/* As expected. */
			break;
		default:
			if (!symbol_conf.disable_add2line_warn)
				pr_warning("%s %s: unexpected record instead of sentinel",
					   __func__, dso_name);
			break;