Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753308AbcDZV7O (ORCPT ); Tue, 26 Apr 2016 17:59:14 -0400 Received: from mail-io0-f181.google.com ([209.85.223.181]:35133 "EHLO mail-io0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753176AbcDZV7L (ORCPT ); Tue, 26 Apr 2016 17:59:11 -0400 MIME-Version: 1.0 In-Reply-To: <20160426210500.GK11033@kernel.org> References: <20160425200646.GA23875@ast-mbp.thefacebook.com> <20160425201750.GD25218@kernel.org> <20160425215947.GA25915@ast-mbp.thefacebook.com> <20160425234138.GA16708@kernel.org> <20160426000724.GA28705@ast-mbp.thefacebook.com> <20160426002928.GB16708@kernel.org> <20160426004358.GA29875@ast-mbp.thefacebook.com> <20160426004747.GC16708@kernel.org> <20160426210500.GK11033@kernel.org> From: Brendan Gregg Date: Tue, 26 Apr 2016 14:58:41 -0700 Message-ID: Subject: Re: [PATCH/RFC v3] perf core: Allow setting up max frame stack depth via sysctl To: Arnaldo Carvalho de Melo Cc: Alexei Starovoitov , David Ahern , Peter Zijlstra , Frederic Weisbecker , Ingo Molnar , Adrian Hunter , Alexander Shishkin , Alexei Starovoitov , He Kuang , Jiri Olsa , Masami Hiramatsu , Milian Wolff , Namhyung Kim , Stephane Eranian , Thomas Gleixner , Vince Weaver , Wang Nan , Zefan Li , Linux Kernel Mailing List Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1796 Lines: 45 On Tue, Apr 26, 2016 at 2:05 PM, Arnaldo Carvalho de Melo wrote: > Em Tue, Apr 26, 2016 at 01:02:34PM -0700, Brendan Gregg escreveu: >> On Mon, Apr 25, 2016 at 5:49 PM, Brendan Gregg wrote: >> > On Mon, Apr 25, 2016 at 5:47 PM, Arnaldo Carvalho de Melo wrote: >> >> Em Mon, Apr 25, 2016 at 05:44:00PM -0700, Alexei Starovoitov escreveu: >> >>> yep :) >> >>> hopefully Brendan can give it another spin. >> >> >> >> Agreed, and I'm calling it a day anyway, Brendan, please consider >> >> retesting, thanks, >> > >> > Will do, thanks! >> >> Looks good. >> >> I started with max depth = 512, and even that was still truncated, and >> had to profile again at 1024 to capture the full stacks. Seems to >> generally match the flame graph I generated with V1, which made me >> want to check that I'm running the new patch, and am: >> >> # grep six_hundred_forty_kb /proc/kallsyms >> ffffffff81c431e0 d six_hundred_forty_kb >> >> I was mucking around and was able to get "corrupted callchain. >> skipping..." errors, but these look to be expected -- that was > > Yeah, thanks for testing! > > And since you talked about userspace without frame pointers, have you > played with '--call-graph lbr'? Not really. Isn't it only 16 levels deep max? Most of our Linux is Xen guests (EC2), and I'd have to check if the MSRs are available for LBR (perf record --call-graph lbr ... returns "The sys_perf_event_open() syscall returned with 95 (Operation not supported) for event (cpu-clock).", so I'd guess not, although many other MSRs are exposed). BTS seemed more promising (deeper stacks), and there's already Xen support for it (need to boot the Xen host with vpmu=bts, preferably vpmu=bts,arch for some PMCs as well :). Brendan