From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754461AbdEHQld (ORCPT ); Mon, 8 May 2017 12:41:33 -0400 Received: from mail.kernel.org ([198.145.29.136]:33158 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752593AbdEHQlb (ORCPT ); Mon, 8 May 2017 12:41:31 -0400 Date: Mon, 8 May 2017 13:41:26 -0300 From: Arnaldo Carvalho de Melo To: Taeung Song Cc: linux-kernel@vger.kernel.org, Jiri Olsa , Namhyung Kim Subject: Re: [PATCH v2 4/4] perf config: Automatically create config file if not exists when setting config Message-ID: <20170508164126.GK7891@kernel.org> References: <1494241669-32560-1-git-send-email-treeze.taeung@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1494241669-32560-1-git-send-email-treeze.taeung@gmail.com> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.8.0 (2017-02-23) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Mon, May 08, 2017 at 08:07:49PM +0900, Taeung Song escreveu: > When setting config key-value pairs, > if user or system config files are nonexistent, > currently perf-config's setting didn't work right. "currently doesn't work right" is too vague? In what way it doesn't work? What happens? Can you rephrase this to describe what is going wrong and how it should behave instead? > So automatically create a config file on the situation. > > Before: > > $ rm -f ~/.perfconfig && perf config --user report.children=false > > $ cat ~/.perfconfig > cat: /root/.perfconfig: No such file or directory > > After: > > $ rm -f ~/.perfconfig && perf config --user report.children=false > > $ cat ~/.perfconfig > # this file is auto-generated. > [report] > children = false > > NOTE: > Even if not free config_set after perf_config_set__init() failed, > it'll be freed at the tail end (i.e. by perf_config_set__delete() > at the end of cmd_config()). > > Cc: Jiri Olsa > Cc: Namhyung Kim > Signed-off-by: Taeung Song > --- > tools/perf/util/config.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > diff --git a/tools/perf/util/config.c b/tools/perf/util/config.c > index 8d724f0..1cc5d80 100644 > --- a/tools/perf/util/config.c > +++ b/tools/perf/util/config.c > @@ -691,10 +691,7 @@ struct perf_config_set *perf_config_set__new(void) > > if (set) { > INIT_LIST_HEAD(&set->sections); > - if (perf_config_set__init(set) < 0) { > - perf_config_set__delete(set); > - set = NULL; > - } > + perf_config_set__init(set); > } > > return set; > -- > 2.7.4