From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752104AbbHTI4b (ORCPT ); Thu, 20 Aug 2015 04:56:31 -0400 Received: from mga14.intel.com ([192.55.52.115]:37055 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750924AbbHTI42 (ORCPT ); Thu, 20 Aug 2015 04:56:28 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,714,1432623600"; d="scan'208";a="752073370" Message-ID: <55D59599.3010601@intel.com> Date: Thu, 20 Aug 2015 11:53:45 +0300 From: Adrian Hunter Organization: Intel Finland Oy, Registered Address: PL 281, 00181 Helsinki, Business Identity Code: 0357606 - 4, Domiciled in Helsinki User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0 MIME-Version: 1.0 To: Arnaldo Carvalho de Melo CC: Ingo Molnar , linux-kernel@vger.kernel.org, Jiri Olsa Subject: Re: [PATCH V8 08/25] perf tools: Add Intel BTS support References: <1437150840-31811-1-git-send-email-adrian.hunter@intel.com> <1437150840-31811-9-git-send-email-adrian.hunter@intel.com> <20150817155243.GA30444@kernel.org> <55D21D2D.5010409@intel.com> <20150817175836.GB30444@kernel.org> <55D23166.8060502@intel.com> <20150817195823.GC30444@kernel.org> <55D2D332.1060409@intel.com> <20150818161008.GD18279@kernel.org> In-Reply-To: <20150818161008.GD18279@kernel.org> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 18/08/15 19:10, Arnaldo Carvalho de Melo wrote: > Em Tue, Aug 18, 2015 at 09:39:46AM +0300, Adrian Hunter escreveu: >> On 17/08/15 22:58, Arnaldo Carvalho de Melo wrote: >>> Em Mon, Aug 17, 2015 at 10:09:26PM +0300, Adrian Hunter escreveu: >>>> On 17/08/2015 8:58 p.m., Arnaldo Carvalho de Melo wrote: >>>>> Em Mon, Aug 17, 2015 at 08:43:09PM +0300, Adrian Hunter escreveu: >>>>>> On 17/08/2015 6:52 p.m., Arnaldo Carvalho de Melo wrote: >>>>>>> 1.92% usleep [unknown] [.] 0x00007fa0ff695086 >>>>>>> 1.60% usleep [unknown] [.] 0xffffffff811c91d0 >>>>>>> 1.48% usleep [unknown] [.] 0x00007fa0ffb3030d >>>>>>> 1.24% usleep [unknown] [.] 0x00007fa0ff6950c7 >>>>> >>>>>> It is very weird that it doesn't know the dso. >>>>> >>>>>> I presume there is nothing unusual about the environment e.g. in a chroot or anything >>>>> >>>>>> What if you try a different event e.g. perf record --per-thread -e cycles sleep 1 >>>>> >>>>> [root@zoo ~]# perf record --per-thread -e cycles sleep 1 >>>>> [ perf record: Woken up 1 times to write data ] >>>>> [ perf record: Captured and wrote 0.014 MB perf.data (9 samples) ] >>>>> [root@zoo ~]# perf report | grep -v ^# | head -5 >>>>> 42.57% sleep libc-2.20.so [.] malloc_hook_ini >>>>> 41.81% sleep [kernel.vmlinux] [k] filemap_fault >>>>> 14.35% sleep [kernel.vmlinux] [k] flush_tlb_mm_range >>>>> 1.18% sleep [kernel.vmlinux] [k] strlcpy >>>>> 0.09% sleep [kernel.vmlinux] [k] native_write_msr_safe >>>>> [root@zoo ~]# >>>>> >>>>> [root@zoo ~]# perf report --dsos libc-2.20.so | grep -v '^[#]' >>>>> 42.57% sleep [.] malloc_hook_ini >>>>> >>>>> [root@zoo ~]# >>>>> >>>>> [root@zoo ~]# perf record --per-thread -e intel_bts// usleep 1 >>>>> [ perf record: Woken up 1 times to write data ] >>>>> [ perf record: Captured and wrote 1.825 MB perf.data ] >>>>> [root@zoo ~]# perf report | grep -v ^# | head -5 >>>>> Warning: >>>>> 79074 instruction trace errors >>>>> 2.80% usleep [unknown] [.] 0x00007f48888aa061 >>>>> [root@zoo ~]# >>>> >>>> Running out of ideas. Can you somehow share or send me the offending perf.data file? >>> >>> http://vger.kernel.org/~acme/perf/perf.data.intel_bts-4.2.0-rc5+.xz >> >> Says: You don't have permission to access >> /~acme/perf/perf.data.intel_bts-4.2.0-rc5+.xz on this server. > > Ooops, fixed. > >>> It works if I use a tip/master kernel: >>> >>> [root@perf4 ~]# uname -r >>> 4.2.0-rc7+ >>> [root@perf4 ~]# uname -r >>> 4.2.0-rc7+ >>> [root@perf4 ~]# perf record --per-thread -e intel_bts// usleep 1 >>> [ perf record: Woken up 1 times to write data ] >>> [ perf record: Captured and wrote 1.785 MB perf.data ] >>> [root@perf4 ~]# dmesg | grep Performance >>> [ 0.188477] Performance Events: PEBS fmt2+, 16-deep LBR, Broadwell >>> events, full-width counters, Intel PMU driver. >>> [root@perf4 ~]# perf report --stdio | grep -v ^# | head -10 >>> >>> >>> >>> >>> 10.81% usleep libc-2.17.so [.] _dl_addr >>> 6.56% usleep [kernel.kallsyms] [.] unmap_single_vma >>> 3.33% usleep ld-2.17.so [.] strcmp >>> 2.53% usleep [kernel.kallsyms] [.] mem_cgroup_begin_page_stat >>> 2.49% usleep ld-2.17.so [.] _dl_lookup_symbol_x >>> 2.39% usleep ld-2.17.so [.] _dl_relocate_object >>> [root@perf4 ~]# >>> >>> Probably some fix for the kernel driver is missing? >> >> Works for me though. > > Works for you if you test in lockstep the tooling with the kernel > sources, right? It works for me as well, if I use the latest tip/master > tooling _and_ kernel, my report was for using the 4.2.0-rc latest for > the kernel and the tooling in tip/master. > > I think this would be just a matter of having a better message, or > perhaps some fix that we need to send to the stable@kernel.org guys, so > that the new tooling works with a slightly older kernel. > > Anyway, consider looking at that perf.data file that I fixed the > permissions on vger, and I will look at the fix you mentioned in another > message. With your perf.data file I was able to find the problem. I have sent patch "perf tools: Fix Intel BTS/PT timestamp handling" to fix it.