On 05/09/2017 01:41 AM, Arnaldo Carvalho de Melo wrote:
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?
I got it !
I'll change the commit log message to be more clear.
Thanks,
Taeung
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 <[email protected]>
Cc: Namhyung Kim <[email protected]>
Signed-off-by: Taeung Song <[email protected]>
---
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