From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751494AbdKVCL1 (ORCPT ); Tue, 21 Nov 2017 21:11:27 -0500 Received: from mga04.intel.com ([192.55.52.120]:61222 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751379AbdKVCL0 (ORCPT ); Tue, 21 Nov 2017 21:11:26 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.44,435,1505804400"; d="scan'208";a="4572260" Subject: Re: [PATCH v1 3/9] perf util: Reconstruct rblist for supporting per-thread shadow stats To: Jiri Olsa Cc: acme@kernel.org, jolsa@kernel.org, peterz@infradead.org, mingo@redhat.com, alexander.shishkin@linux.intel.com, Linux-kernel@vger.kernel.org, ak@linux.intel.com, kan.liang@intel.com, yao.jin@intel.com References: <1511189024-19908-1-git-send-email-yao.jin@linux.intel.com> <1511189024-19908-4-git-send-email-yao.jin@linux.intel.com> <20171121151720.GD20440@krava> From: "Jin, Yao" Message-ID: <0ebc0dad-bd43-835d-e5c9-70f096174aec@linux.intel.com> Date: Wed, 22 Nov 2017 10:11:24 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <20171121151720.GD20440@krava> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 11/21/2017 11:17 PM, Jiri Olsa wrote: > On Mon, Nov 20, 2017 at 10:43:38PM +0800, Jin Yao wrote: > > SNIP > >> +static void init_saved_rblist(struct rblist *rblist) >> +{ >> + rblist__init(rblist); >> + rblist->node_cmp = saved_value_cmp; >> + rblist->node_new = saved_value_new; >> + rblist->node_delete = saved_value_delete; >> +} >> + >> +static void free_saved_rblist(struct rblist *rblist) >> +{ >> + rblist__reset(rblist); >> +} >> + >> +void perf_stat__init_runtime_stat(struct runtime_stat *stat) >> +{ >> + memset(stat, 0, sizeof(struct runtime_stat)); >> + init_saved_rblist(&stat->value_list); >> +} >> + >> +void perf_stat__free_runtime_stat(struct runtime_stat *stat) >> +{ >> + free_saved_rblist(&stat->value_list); >> +} >> + >> void perf_stat__init_shadow_stats(void) >> { >> have_frontend_stalled = pmu_have_event("cpu", "stalled-cycles-frontend"); >> - rblist__init(&runtime_saved_values); >> - runtime_saved_values.node_cmp = saved_value_cmp; >> - runtime_saved_values.node_new = saved_value_new; >> - /* No delete for now */ >> + memset(&walltime_nsecs_stats, 0, sizeof(walltime_nsecs_stats)); > > why do you zero walltime_nsecs_stats in here? > > jirka > walltime_nsecs_stats is initialized in process_interval(). init_stats(&walltime_nsecs_stats); Yes, the zero of walltime_nsecs_stats in perf_stat__init_shadow_stats looks a bit redundant. I will remove it. Thanks Jin Yao