Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp1234591imm; Tue, 5 Jun 2018 11:06:42 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLbu/5g6f8ymG4tXWu+NuQaH6ozW/L7zK2JHB/FAOpOgz/d/bpr6g3fnobJQoK0X90eqlEa X-Received: by 2002:a63:7b4e:: with SMTP id k14-v6mr21727045pgn.261.1528222002205; Tue, 05 Jun 2018 11:06:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528222002; cv=none; d=google.com; s=arc-20160816; b=gq+cGCTgBgBfQnBSWkbd2ouwqB/xssq138wa2h9YAqizc+CdJPuqIOINX650ZCFydn ElbRBoiS+Il5PGef9pXaMKQH6ikdiWr1QbVNTb2UB2OjLcVjlM1sXm/38TdOKFHehAOT J061mS0UY872N7Jelbo04K1Zvpq15hACVLNScXDwsnOEWZoRGb6Si7QKTnOdl75YfXtQ ugqACHgR/3MDq7rmdH+8qErTdhsONpQCsLXNHYK+AXxj4ExM1oUPzxbjBLuSzXEyhhuQ A8VnL4zS8AfWY4XTHbWfQ6TMu+lthP6nXKbqpDY1oEFK5q3gg9KzY914AhJ00grj1Gzi ScWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=YEqPmpAqUIGbGdGZQG+Z5bG1R3CL3sVh7LlYDWZ1sno=; b=U+m1vJ5I8fSt7SJ/COC9GNjwIE6Lz+JQQzMQa+WiqwGOY2j85LoBzpWAdHRddJd47W HmfSwPe3aZY8AXW+vYho5dxSuBiGf4iYRVL2OVAh1wG2Jf9+3Rx2a9gVUWJx4KqpEIUu JebvSogvgGDbEsBTgOGjp7RDcsmj3nenb4paiXsBEKxP3JHwEG7QnSiIyHkFu23nYsQk TjC9VRqiRdSY4OEkHuSpWRpRqn8sHYVkqE+GAOcBS3vK8Jj1uU8zfxd+64Rsj8I6q5nM GuJYHMePoq5Nk8UgW+9mJkVXgj1gM0vvwRlFWqynf/N5RhrPZ8+ZC393i4CvGC+8gw4O 9UsQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=TiOhiQUz; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 1-v6si22981813plz.379.2018.06.05.11.06.28; Tue, 05 Jun 2018 11:06:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=TiOhiQUz; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752213AbeFERvP (ORCPT + 99 others); Tue, 5 Jun 2018 13:51:15 -0400 Received: from mail.kernel.org ([198.145.29.99]:45678 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752113AbeFERvM (ORCPT ); Tue, 5 Jun 2018 13:51:12 -0400 Received: from jouet.infradead.org (unknown [179.97.41.186]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 23DA220874; Tue, 5 Jun 2018 17:51:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1528221071; bh=QIBZCEWtdlUkmeOkxiWUD45Q+f8IvapDsb6HrbTg7M0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=TiOhiQUz2sCGnGwZmsHMk02q5xjPLhMYXeWnYVo0W3nAjVvAKHE2o//SiLUR0qfLr iR8UNoYw7tDK//R+xuxb9tMzUlVBpPAAbWWF3UmBJEoXRUeJnhuzrqBWC9HJqJhM66 NoMjygvKkzPRncuYbVTwRZfEoFYw6soiWzwQoyTE= From: Arnaldo Carvalho de Melo To: Ingo Molnar Cc: Clark Williams , linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, Arnaldo Carvalho de Melo , Adrian Hunter , David Ahern , Jiri Olsa , Namhyung Kim , Wang Nan Subject: [PATCH 10/46] perf annotate: __symbol__inc_addr_samples() needs just annotated_source Date: Tue, 5 Jun 2018 14:49:54 -0300 Message-Id: <20180605175030.32549-11-acme@kernel.org> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180605175030.32549-1-acme@kernel.org> References: <20180605175030.32549-1-acme@kernel.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Arnaldo Carvalho de Melo It only operates on the histograms, so no need for the encompassing 'struct annotation'. Cc: Adrian Hunter Cc: David Ahern Cc: Jiri Olsa Cc: Namhyung Kim Cc: Wang Nan Link: https://lkml.kernel.org/n/tip-2se2v7rrjil0kwqywks04ey2@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/util/annotate.c | 6 +++--- tools/perf/util/annotate.h | 8 ++++++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index a6fa49bf879b..a5a6d686004e 100644 --- a/tools/perf/util/annotate.c +++ b/tools/perf/util/annotate.c @@ -819,7 +819,7 @@ static int __symbol__account_cycles(struct cyc_hist *ch, } static int __symbol__inc_addr_samples(struct symbol *sym, struct map *map, - struct annotation *notes, int evidx, u64 addr, + struct annotated_source *src, int evidx, u64 addr, struct perf_sample *sample) { unsigned offset; @@ -835,7 +835,7 @@ static int __symbol__inc_addr_samples(struct symbol *sym, struct map *map, } offset = addr - sym->start; - h = annotation__histogram(notes, evidx); + h = annotated_source__histogram(src, evidx); h->nr_samples++; h->addr[offset].nr_samples++; h->period += sample->period; @@ -874,7 +874,7 @@ static int symbol__inc_addr_samples(struct symbol *sym, struct map *map, notes = symbol__get_annotation(sym, false); if (notes == NULL) return -ENOMEM; - return __symbol__inc_addr_samples(sym, map, notes, evsel->idx, addr, sample); + return __symbol__inc_addr_samples(sym, map, notes->src, evsel->idx, addr, sample); } static int symbol__account_cycles(u64 addr, u64 start, diff --git a/tools/perf/util/annotate.h b/tools/perf/util/annotate.h index 94b60e34c3a7..2a73f9084930 100644 --- a/tools/perf/util/annotate.h +++ b/tools/perf/util/annotate.h @@ -267,10 +267,14 @@ void annotation__mark_jump_targets(struct annotation *notes, struct symbol *sym) void annotation__update_column_widths(struct annotation *notes); void annotation__init_column_widths(struct annotation *notes, struct symbol *sym); +static inline struct sym_hist *annotated_source__histogram(struct annotated_source *src, int idx) +{ + return ((void *)src->histograms) + (src->sizeof_sym_hist * idx); +} + static inline struct sym_hist *annotation__histogram(struct annotation *notes, int idx) { - return (((void *)notes->src->histograms) + - (notes->src->sizeof_sym_hist * idx)); + return annotated_source__histogram(notes->src, idx); } static inline struct annotation *symbol__annotation(struct symbol *sym) -- 2.14.3