From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753020AbcISXeb (ORCPT ); Mon, 19 Sep 2016 19:34:31 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:57307 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751648AbcISXe3 (ORCPT ); Mon, 19 Sep 2016 19:34:29 -0400 Date: Tue, 20 Sep 2016 01:32:04 +0200 (CEST) From: Thomas Gleixner To: Masami Hiramatsu cc: Jiri Olsa , Arnaldo Carvalho de Melo , linux-kernel@vger.kernel.org, Peter Zijlstra , Ingo Molnar , Namhyung Kim , David Ahern Subject: Re: failed to add c++ probe In-Reply-To: <20160920080557.5db69ddd16524ca6abcb3d83@kernel.org> Message-ID: References: <20160919095402.GA2306@krava> <20160920080557.5db69ddd16524ca6abcb3d83@kernel.org> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Masami, On Tue, 20 Sep 2016, Masami Hiramatsu wrote: > Hmm, could you try to find mangled symbol from the library as below? > > ./perf probe -x /usr/lib64/libstdc++.so.6 -F \* > > And also try to do adding probe with -v option again? > > In my case, I could find the mangled symbol, but failed to setup the probe... ./perf probe -x /usr/lib/x86_64-linux-gnu/libstdc++.so.6 -v _X_ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv probe-definition(0): _X_ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv symbol:_X_ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv file:(null) line:0 offset:0 return:0 lazy:(null) 0 arguments symbol:catch file:(null) line:0 offset:0 return:0 lazy:(null) symbol:throw file:(null) line:0 offset:0 return:0 lazy:(null) symbol:rethrow file:(null) line:0 offset:0 return:0 lazy:(null) Open Debuginfo file: /usr/lib/debug/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22 Try to find probe point from debuginfo. Symbol _X_ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv address found : 8c620 Matched function: is_open found inline addr: 0x8cad0 Probe point found: is_open+0 found inline addr: 0x8cac0 Probe point found: is_open+0 found inline addr: 0x8cab0 Probe point found: is_open+0 Matched function: is_open An error occurred in debuginfo analysis (-2). Trying to use symbols. Opening /sys/kernel/tracing//uprobe_events write=1 Writing event: p:probe_libstdc++/_X_ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22:0x8c620 Failed to write event: Invalid argument Error: Failed to add events. Reason: Invalid argument (Code: -22) [16568.176464] Failed to allocate trace_uprobe.(-22) [16568.176468] Failed to parse address or file. Aside of that mangled symbols with a @plt suffix do not work at all. Thanks, tglx