From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751329AbcGUHJ3 (ORCPT ); Thu, 21 Jul 2016 03:09:29 -0400 Received: from metis.ext.4.pengutronix.de ([92.198.50.35]:58470 "EHLO metis.ext.4.pengutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750929AbcGUHJ0 (ORCPT ); Thu, 21 Jul 2016 03:09:26 -0400 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo Cc: kernel@pengutronix.de, Alexander Shishkin , Jiri Olsa , linux-kernel@vger.kernel.org, =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Subject: [PATCH] perf symbols: Fix reading build id Date: Thu, 21 Jul 2016 09:09:07 +0200 Message-Id: <1469084947-14567-1-git-send-email-uwe@kleine-koenig.org> X-Mailer: git-send-email 2.8.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::c0 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Uwe Kleine-König When is_regular_file(name) is called name points to a freshly allocated and uninitialized chunk of memory, so is_regular_file(name) is usually false and reading build id is skipped which makes it impossible to find debug infos when a build id based system is in use. Fixes: 403567217d3f ("perf symbols: Do not read symbols/data from device files") Signed-off-by: Uwe Kleine-König --- tools/perf/util/symbol.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c index 54c4ff2b1cee..7044742c828f 100644 --- a/tools/perf/util/symbol.c +++ b/tools/perf/util/symbol.c @@ -1430,7 +1430,7 @@ int dso__load(struct dso *dso, struct map *map, symbol_filter_t filter) * Read the build id if possible. This is required for * DSO_BINARY_TYPE__BUILDID_DEBUGINFO to work */ - if (is_regular_file(name) && + if (is_regular_file(dso->long_name) && filename__read_build_id(dso->long_name, build_id, BUILD_ID_SIZE) > 0) dso__set_build_id(dso, build_id); -- 2.8.1