From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752481AbaKUViR (ORCPT ); Fri, 21 Nov 2014 16:38:17 -0500 Received: from mga11.intel.com ([192.55.52.93]:26687 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750956AbaKUViQ (ORCPT ); Fri, 21 Nov 2014 16:38:16 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.07,432,1413270000"; d="scan'208";a="626399865" From: Andi Kleen To: acme@kernel.org Cc: jolsa@redhat.com, linux-kernel@vger.kernel.org, namhyung@kernel.org, Andi Kleen Subject: [PATCH 1/2] perf, tools: Fix crash while reading old perf.data Date: Fri, 21 Nov 2014 13:37:59 -0800 Message-Id: <1416605880-25055-1-git-send-email-andi@firstfloor.org> X-Mailer: git-send-email 1.9.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Andi Kleen In some cases when reading perf.data generated by much older perf I got segfaults with dso->long_name being zero. This patch fixes them for me. Haven't tracked down the exact cause. I assume it's some error path that doesn't set it. Signed-off-by: Andi Kleen --- tools/perf/util/machine.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c index 52e9490..6266041 100644 --- a/tools/perf/util/machine.c +++ b/tools/perf/util/machine.c @@ -1106,7 +1106,7 @@ static int machine__process_kernel_mmap_event(struct machine *machine, if (__machine__create_kernel_maps(machine, kernel) < 0) goto out_problem; - if (strstr(dso->long_name, "vmlinux")) + if (dso->long_name && strstr(dso->long_name, "vmlinux")) dso__set_short_name(dso, "[kernel.vmlinux]", false); machine__set_kernel_mmap_len(machine, event); -- 1.9.3