From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754168AbbCCCpS (ORCPT ); Mon, 2 Mar 2015 21:45:18 -0500 Received: from mail.kernel.org ([198.145.29.136]:41164 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751526AbbCCCpQ (ORCPT ); Mon, 2 Mar 2015 21:45:16 -0500 Date: Mon, 2 Mar 2015 23:45:12 -0300 From: Arnaldo Carvalho de Melo To: Masami Hiramatsu Cc: Naohiro Aota , Peter Zijlstra , Linux Kernel Mailing List , David Ahern , namhyung@kernel.org, Jiri Olsa , Ingo Molnar Subject: Re: [PATCH perf/core 2/4] perf-probe: Fix to handle aliased symbols in glibc Message-ID: <20150303024512.GA5187@kernel.org> References: <20150302124939.9191.33564.stgit@localhost.localdomain> <20150302124953.9191.16348.stgit@localhost.localdomain> <20150302154642.GD5538@kernel.org> <54F51EC6.2040902@hitachi.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54F51EC6.2040902@hitachi.com> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Tue, Mar 03, 2015 at 11:39:02AM +0900, Masami Hiramatsu escreveu: > (2015/03/03 0:46), Arnaldo Carvalho de Melo wrote: > > Em Mon, Mar 02, 2015 at 09:49:53PM +0900, Masami Hiramatsu escreveu: > >> With this patch; > >> ----- > >> # ./perf probe -x /usr/lib64/libc-2.17.so -V malloc > >> Available variables at malloc > >> @<__libc_malloc+0> > >> size_t bytes > >> # ./perf probe -x /usr/lib64/libc-2.17.so -a "malloc bytes" > >> Added new event: > >> probe_libc:malloc (on malloc in /usr/lib64/libc-2.17.so with bytes) > >> > >> You can now use it in all perf tools, such as: > >> > >> perf record -e probe_libc:malloc -aR sleep 1 > > > >> Reported-by: Arnaldo Carvalho de Melo > > > > Humm, not working for me, after the patch: > > > > [root@ssdandy ~]# perf probe -x /usr/lib64/libc-2.17.so -V malloc > > Available variables at malloc > > @<__malloc_check_init+96> > > (No matched variables) > Will try after a 'make build-test' finishes for the current batch > > [root@ssdandy ~]# > > > > And then the one asking for 'bytes' to be collectd fails. > > > > After processing the other patches I'll try to debug this... > > > > [root@ssdandy ~]# cat /etc/redhat-release > > Red Hat Enterprise Linux Server release 7.0 (Maipo) > > [root@ssdandy ~]# rpm -q glibc glibc-debuginfo > > glibc-2.17-55.el7_0.3.x86_64 > > glibc-debuginfo-2.17-55.el7_0.1.x86_64 > ^^^ why is this different from the glibc version?? > > > [root@ssdandy ~]# > > [acme@ssdandy linux]$ readelf -Ws /usr/lib64/libc-2.17.so| grep malloc > [...] > > 4849: 0000000000080050 107 FUNC LOCAL DEFAULT 12 __malloc_check_init > > __malloc_check_init+96(0x60) becomes 0x80050 + 0x60 = 0x800b0 > > > 5351: 00000000000800c0 245 FUNC LOCAL DEFAULT 12 __malloc > > 1170: 00000000000800c0 245 FUNC GLOBAL DEFAULT 12 malloc@@GLIBC_2.2.5 > > that is not 0x800c0, so something goes wrong when translating the address > to probe point. Could you check the patch 1/4 was applied? > Actually there is a bug in the routine which gets the probe point from > address. 1/4 fixes it. This one? commit 0104fe69e0287cf3635657b4c6b26a18e0091697 Author: Masami Hiramatsu Date: Mon Mar 2 21:49:46 2015 +0900 perf probe: Remove bias offset to find probe point by address Remove bias offset to find probe point by address. ---------------- Yes, it is applied. - Arnaldo