From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752291AbbFZUeZ (ORCPT ); Fri, 26 Jun 2015 16:34:25 -0400 Received: from mail.kernel.org ([198.145.29.136]:36447 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751828AbbFZUeR (ORCPT ); Fri, 26 Jun 2015 16:34:17 -0400 Date: Fri, 26 Jun 2015 17:34:11 -0300 From: Arnaldo Carvalho de Melo To: Adrian Hunter Cc: Ingo Molnar , linux-kernel@vger.kernel.org, Jiri Olsa , Stephane Eranian Subject: Re: [PATCH V6 08/17] perf tools: Add Intel PT support Message-ID: <20150626203411.GA3110@kernel.org> References: <20150622182444.GI13937@kernel.org> <55886F7A.30702@intel.com> <20150622230005.GA8510@kernel.org> <5588FCCE.8090403@intel.com> <20150623151553.GD3489@kernel.org> <558C03FD.4020600@intel.com> <20150625134557.GB3253@kernel.org> <20150625235634.GA6633@kernel.org> <20150626000958.GB6633@kernel.org> <558CF5B4.70901@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <558CF5B4.70901@intel.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 Fri, Jun 26, 2015 at 09:48:20AM +0300, Adrian Hunter escreveu: > On 26/06/15 03:09, Arnaldo Carvalho de Melo wrote: > > Em Thu, Jun 25, 2015 at 08:56:34PM -0300, Arnaldo Carvalho de Melo escreveu: > >> Will do the same tests with intel_pt as well, on a remote machine, add examples > >> to the changeset logs and everything going well, aim for pushing for Ingo soon, > > > > So, I asked for callchains, with: > > > > perf record -g -e intel_bts// ls > > > > And it got stuck somewhere, then I did a perf top to see where it was, > > and got to: > > > > 96.24% perf [.] intel_bts_process_queue > > > > Annotating I get to: > > > > 1.17 │1a0:┌─→mov 0x8(%r13),%rdx > > │ │ test %rdx,%rdx > > 98.83 │ └──je 1a0 > > > > > > Which is an endless loop! Source code for intel_bts_process_buffer(), > > inlined there: > > > > while (sz > sizeof(struct branch)) { > > if (!branch->from && !branch->to) > > continue; > > err = intel_bts_synth_branch_sample(btsq, branch); > > if (err) > > break; > > branch += 1; > > sz -= sizeof(struct branch); > > } > > > > Can you fix this, please, so that I can fold it into where it was > > introduced, namely: > > > > commit 439ad895a2aecea09416206f023336297cc72efe > > Author: Adrian Hunter > > Date: Fri May 29 16:33:39 2015 +0300 > > > > perf tools: Add Intel BTS support > > It is fixed as an unexpected side-effect of a following patch (which is probably why I didn't notice it - or perhaps I rolled the fix into the wrong patch O_o). The fix is in: > > perf tools: Output sample flags and insn_len from intel_bts > > intel_bts synthesizes samples. Fill in the new flags and insn_len > members with instruction information. > > Signed-off-by: Adrian Hunter > > > So what you want is: Ok, folded that, fixed the problem, moving on... - Arnaldo