All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] perf config: Introduce default config key-value pairs arrays
@ 2016-05-09 11:41 Taeung Song
  2016-05-09 11:41 ` [PATCH 1/4] perf config: Introduce default_config_item for all default config key-value pairs Taeung Song
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Taeung Song @ 2016-05-09 11:41 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: linux-kernel, Jiri Olsa, Namhyung Kim, Ingo Molnar,
	Peter Zijlstra, Alexander Shishkin, Taeung Song

We currently use values of actual type(int, bool, char *, etc.)
when initializing default perf config values.

For example,
If there isn't user config value at ~/.perfconfig for 'annotate.use_offset' config variable,
default value for it is 'true' bool type value in perf like below.

At ui/browsers/annoate.c

static struct annotate_browser_opt {
       bool hide_src_code,
            use_offset,
	    jump_arrows,
	    show_linenr,
	    show_nr_jumps,
	    show_total_period;
} annotate_browser__opts = {
       .use_offset      = true,
       .jump_arrows     = true,
};

But I suggest using new config arrays that have all default config key-value pairs
and then initializing default config values with them.
Because if we do, we can manage default perf config values at one spot (like util/config.c)
and It can be easy and simple to modify default config values or add new configs.

For example,
If we use new default config arrays and there isn't user config value for 'annoate.use_offset'
default value for it will be set as annotate_config_items[CONFIG_ANNOATE_USE_OFFSET].value
instead of actual boolean type value 'true'.

IMHO, I think it should be needed to use new default config arrays
to manage default perf config values more effectively.
And this pathset contains patchs for only 'colors' and 'annoate' section
because waiting for other opinions.

If you review this patchset, I'd appreciate it :-)

Thanks,
Taeung

Taeung Song (4):
  perf config: Introduce default_config_item for all default config
    key-value pairs
  perf tools: Separate out code setting ground colors from
    ui_browser__color_config
  perf config: Initialize ui_browser__colorsets with default config
    items
  perf config: Initialize annotate_browser__opts with default config
    items

 tools/perf/ui/browser.c           |  89 ++++++++++++++--------
 tools/perf/ui/browser.h           |   1 +
 tools/perf/ui/browsers/annotate.c |  12 ++-
 tools/perf/ui/tui/setup.c         |   1 +
 tools/perf/util/cache.h           |   1 +
 tools/perf/util/config.c          | 150 +++++++++++++++++++++++++++++++++++++-
 tools/perf/util/config.h          |  74 ++++++++++++++++++-
 7 files changed, 291 insertions(+), 37 deletions(-)

-- 
2.5.0

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-05-11 10:30 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-09 11:41 [PATCH 0/4] perf config: Introduce default config key-value pairs arrays Taeung Song
2016-05-09 11:41 ` [PATCH 1/4] perf config: Introduce default_config_item for all default config key-value pairs Taeung Song
2016-05-09 17:17   ` Arnaldo Carvalho de Melo
2016-05-10 11:49     ` Taeung Song
2016-05-10 15:05       ` Arnaldo Carvalho de Melo
2016-05-11 10:30         ` Taeung Song
2016-05-09 11:41 ` [PATCH 2/4] perf tools: Separate out code setting ground colors from ui_browser__color_config Taeung Song
2016-05-09 17:17   ` Arnaldo Carvalho de Melo
2016-05-10 11:33     ` Taeung Song
2016-05-09 11:41 ` [PATCH 3/4] perf config: Initialize ui_browser__colorsets with default config items Taeung Song
2016-05-09 17:19   ` Arnaldo Carvalho de Melo
2016-05-10 11:57     ` Taeung Song
2016-05-09 11:41 ` [PATCH 4/4] perf config: Initialize annotate_browser__opts " Taeung Song

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.