From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 5 Sep 2014 11:11:23 -0300 From: Arnaldo Carvalho de Melo To: Adrian Hunter Cc: Namhyung Kim , Peter Zijlstra , Ingo Molnar , Paul Mackerras , Namhyung Kim , LKML , Jiri Olsa , David Ahern , Stephane Eranian , Andi Kleen , stable@vger.kernel.org Subject: Re: [PATCH v2] perf tools: Fix build-id matching on vmlinux Message-ID: <20140905141123.GE30520@kernel.org> References: <1409893157-469-1-git-send-email-namhyung@kernel.org> <540964C0.1050702@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <540964C0.1050702@intel.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: Em Fri, Sep 05, 2014 at 10:22:40AM +0300, Adrian Hunter escreveu: > On 09/05/2014 07:59 AM, Namhyung Kim wrote: > > +++ b/tools/perf/util/machine.c > > @@ -1060,10 +1060,14 @@ static int machine__process_kernel_mmap_event(struct machine *machine, > > strlen(kmmap_prefix)); > > /* > > * Should be there already, from the build-id table in > > - * the header. > > + * the header (but maybe with a different name: "vmlinux"). > > */ > > - struct dso *kernel = __dsos__findnew(&machine->kernel_dsos, > > - kmmap_prefix); > > + struct dso *kernel = dsos__find(&machine->kernel_dsos, > > + "vmlinux", true); > Isn't "vmlinux" just the basename of the original file name, so if it had a > different name this wouldn't work e.g. if the filename had been > /boot/vmlinuz-3.11.0-26-generic then you would need > "vmlinuz-3.11.0-26-generic" for this to work? Yeah, looking for well known pathnames to then check if the build-id matches the one we're looking for, be it because we obtained it from /sys/kernel/notes (for the running kernel), or from the perf.data file build-id table is ok, as we don't know where it is. Plain sticking "vmlinux" there is not. - Arnaldo