From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752017AbcDZBYi (ORCPT ); Mon, 25 Apr 2016 21:24:38 -0400 Received: from mail.kernel.org ([198.145.29.136]:53686 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750749AbcDZBYh (ORCPT ); Mon, 25 Apr 2016 21:24:37 -0400 Date: Mon, 25 Apr 2016 22:24:31 -0300 From: Arnaldo Carvalho de Melo To: Stephane Eranian Cc: Peter Zijlstra , David Ahern , Milian Wolff , =?iso-8859-1?Q?Fr=E9d=E9ric?= Weisbecker , Ingo Molnar , Namhyung Kim , Linux Kernel Mailing List Subject: LBR callchains from tracepoints Message-ID: <20160426012431.GE16708@kernel.org> References: <57157965.4020506@gmail.com> <1704384.MQzPvE4Oa5@milian-kdab2> <20160426010358.GD16708@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20160426010358.GD16708@kernel.org> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Mon, Apr 25, 2016 at 10:03:58PM -0300, Arnaldo Carvalho de Melo escreveu: > I now need to continue investigation why this doesn't seem to work from > tracepoints... Bummer, the changeset (at the end of this message) hasn't any explanation, is this really impossible? I.e. LBR callstacks from tracepoints? Even if we set perf_event_attr.exclude_callchain_kernel? I've read somewhere that LBR wouldn't work for the kernel, but when I tried, for cycles:ppp I got: [acme@jouet linux]$ perf record --call-graph lbr usleep 1 [ perf record: Woken up 1 times to write data ] [ perf record: Captured and wrote 0.018 MB perf.data (9 samples) ] [acme@jouet linux]$ perf evlist -v cycles:ppp: size: 112, { sample_period, sample_freq }: 4000, sample_type: IP|TID|TIME|CALLCHAIN|PERIOD|BRANCH_STACK, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, enable_on_exec: 1, task: 1, precise_ip: 3, sample_id_all: 1, exclude_guest: 1, mmap2: 1, comm_exec: 1, branch_sample_type: USER|CALL_STACK|NO_FLAGS|NO_CYCLES [acme@jouet linux]$ - 59.69% usleep [kernel] [k] vma_interval_tree_insert →vma_interval_tree_insert [kernel] vma_adjust [kernel] __split_vma.isra.31 [kernel] split_vma [kernel] mprotect_fixup [kernel] sys_mprotect [kernel] entry_SYSCALL_64_fastpath [kernel] mprotect ld-2.22.so _dl_relocate_object ld-2.22.so memcpy@GLIBC_2.2.5 libc-2.22.so _dl_relocate_object ld-2.22.so __gettimeofday libc-2.22.so _dl_vdso_vsym libc-2.22.so _dl_lookup_symbol_x ld-2.22.so This was done on a Broadwell system (ThinkPad t450s). - Arnaldo commit 2481c5fa6db0237e4f0168f88913178b2b495b7c Author: Stephane Eranian Date: Thu Feb 9 23:20:59 2012 +0100 perf: Disable PERF_SAMPLE_BRANCH_* when not supported PERF_SAMPLE_BRANCH_* is disabled for: - SW events (sw counters, tracepoints) - HW breakpoints - ALL but Intel x86 architecture - AMD64 processors Signed-off-by: Stephane Eranian Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1328826068-11713-10-git-send-email-eranian@google.com Signed-off-by: Ingo Molnar