Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752525AbdIMPWA (ORCPT ); Wed, 13 Sep 2017 11:22:00 -0400 Received: from mail.kernel.org ([198.145.29.99]:51220 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751305AbdIMPV7 (ORCPT ); Wed, 13 Sep 2017 11:21:59 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A14F9218F9 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=acme@kernel.org Date: Wed, 13 Sep 2017 12:21:56 -0300 From: Arnaldo Carvalho de Melo To: =?iso-8859-1?Q?Fr=E9d=E9ric?= Weisbecker , kan.liang@intel.com Cc: peterz@infradead.org, mingo@redhat.com, linux-kernel@vger.kernel.org, jolsa@kernel.org, namhyung@kernel.org, adrian.hunter@intel.com, lukasz.odzioba@intel.com, ak@linux.intel.com Subject: Re: [PATCH RFC V2 03/10] petf tools: using comm_str to replace comm in hist_entry Message-ID: <20170913152156.GI5866@kernel.org> References: <1505096603-215017-1-git-send-email-kan.liang@intel.com> <1505096603-215017-4-git-send-email-kan.liang@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1505096603-215017-4-git-send-email-kan.liang@intel.com> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.8.3 (2017-05-23) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3128 Lines: 91 Em Sun, Sep 10, 2017 at 07:23:16PM -0700, kan.liang@intel.com escreveu: > From: Kan Liang > > For hist_entry, it only needs comm_str for cmp. And thinking a bit more, isn't this even a bug fix, as at the time of that sample that was the comm string associated with that thread? Fr?d?ric, am I nutz? - Arnaldo > Signed-off-by: Kan Liang > --- > tools/perf/util/hist.c | 4 ++-- > tools/perf/util/sort.c | 8 ++++---- > tools/perf/util/sort.h | 2 +- > 3 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c > index e60d8d8..0f00dd9 100644 > --- a/tools/perf/util/hist.c > +++ b/tools/perf/util/hist.c > @@ -587,7 +587,7 @@ __hists__add_entry(struct hists *hists, > struct namespaces *ns = thread__namespaces(al->thread); > struct hist_entry entry = { > .thread = al->thread, > - .comm = thread__comm(al->thread), > + .comm_str = thread__comm_str(al->thread), > .cgroup_id = { > .dev = ns ? ns->link_info[CGROUP_NS_INDEX].dev : 0, > .ino = ns ? ns->link_info[CGROUP_NS_INDEX].ino : 0, > @@ -944,7 +944,7 @@ iter_add_next_cumulative_entry(struct hist_entry_iter *iter, > .hists = evsel__hists(evsel), > .cpu = al->cpu, > .thread = al->thread, > - .comm = thread__comm(al->thread), > + .comm_str = thread__comm_str(al->thread), > .ip = al->addr, > .ms = { > .map = al->map, > diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c > index eb3ab90..99ab411 100644 > --- a/tools/perf/util/sort.c > +++ b/tools/perf/util/sort.c > @@ -114,26 +114,26 @@ static int64_t > sort__comm_cmp(struct hist_entry *left, struct hist_entry *right) > { > /* Compare the addr that should be unique among comm */ > - return strcmp(comm__str(right->comm), comm__str(left->comm)); > + return strcmp(right->comm_str, left->comm_str); > } > > static int64_t > sort__comm_collapse(struct hist_entry *left, struct hist_entry *right) > { > /* Compare the addr that should be unique among comm */ > - return strcmp(comm__str(right->comm), comm__str(left->comm)); > + return strcmp(right->comm_str, left->comm_str); > } > > static int64_t > sort__comm_sort(struct hist_entry *left, struct hist_entry *right) > { > - return strcmp(comm__str(right->comm), comm__str(left->comm)); > + return strcmp(right->comm_str, left->comm_str); > } > > static int hist_entry__comm_snprintf(struct hist_entry *he, char *bf, > size_t size, unsigned int width) > { > - return repsep_snprintf(bf, size, "%-*.*s", width, width, comm__str(he->comm)); > + return repsep_snprintf(bf, size, "%-*.*s", width, width, he->comm_str); > } > > struct sort_entry sort_comm = { > diff --git a/tools/perf/util/sort.h b/tools/perf/util/sort.h > index f36dc49..861cbe7 100644 > --- a/tools/perf/util/sort.h > +++ b/tools/perf/util/sort.h > @@ -96,7 +96,7 @@ struct hist_entry { > struct he_stat *stat_acc; > struct map_symbol ms; > struct thread *thread; > - struct comm *comm; > + const char *comm_str; > struct namespace_id cgroup_id; > u64 ip; > u64 transaction; > -- > 2.5.5