mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Taeung Song <treeze.taeung@gmail.com>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: linux-kernel@vger.kernel.org, jolsa@redhat.com,
	namhyung@kernel.org, Ingo Molnar <mingo@redhat.com>,
	Taeung Song <treeze.taeung@gmail.com>
Subject: [PATCH v7 0/7] perf tools: Add 'perf-config' command
Date: Sun,  4 Oct 2015 16:35:03 +0900	[thread overview]
Message-ID: <1443944110-6414-1-git-send-email-treeze.taeung@gmail.com> (raw)

So far, it is difficult that the state of perf configs is looked through
and there's no knowing what kind of other variables except variables in perfconfig.example.
Also perf configs can't be changed without manually modifying $HOME/.perfconfig or
$(sysconfdir)/perfconfig file. So I suggest this patchset of the perf-config command
which can list, get, set, remove perf configs or list with default config values as below.

Taeung Song (7):
[PATCH v7 1/7] perf tools: Add 'perf-config' command
[PATCH v7 2/7] perf config: Add '--system' and '--user' options to select which
       	       	    	    config file is used
[PATCH v7 3/7] perf config: Add a option 'list-all' to perf-config
[PATCH v7 4/7] perf config: Add 'get' functionality
[PATCH v7 5/7] perf config: Add 'set' feature
[PATCH v7 6/7] perf config: normalize a value depending on default type of it
[PATCH v7 7/7] perf config: Add a option 'remove' to perf-config

Changes in v7:
	- Modify explanations of syntax and options(color, gtk, tui, buildid, annotate)
	to be better proper descriptions as suggested by Arnaldo (PATCH v7 1/7)

Changes in v6:
	- Split a 'set' feature patch into two patch to separate normalize_value() from it. 
	(PATCH v6 5/7, PATCH v6 6/7)
	- Bug fix : 'remove' and 'set' malfunctions when without a specific file-option.
	(If file-option isn't used, 'remove' feature had to use both user and system
	config file and 'set' feature had to only handle user config file.)
	(PATCH v6 5/7, PATCH v6 7/7)

Changes in v5:
	- Simplify the switch statement in cmd_config()
	- Set a config file path with '--system' or '--user'
	instead of '--global' or '--system' as suggested by Namhyung. (PATCH v5 2/6)
	- The patch about 'get' and 'set 'split into two patchs
	as suggested by Namhyung. (PATCH v5 4/6, PATCH v5 5/6)

Changes in v4:
	- If some config value is default value, notice it is '(default)'
	as suggested by Jirka. (PATCH v4 3/5)

	- If there wasn't any perfconfig file, perf-config malfunctioned like
	Jirka pointed out. So add exception routine with '--global' and '--system'
	option which can select perf config file path. (PATCH v4 2/5)

Changes in v3:
	- Add a config variable 'kmem.default' with a default value as suggested by Namhyung.
	(PATCH v3 2/5, PATCH v4 3/5)

Changes in v2:
	- Change option name of listing all configs as '--list-all' instead of '--all'
	as suggested by Namhyung. (PATCH v2 3/4, PATCH v4 4/5)

	- Correct small infelicities or typing errors in a perf-config documention
	as suggested by Arnaldo. (PATCH v2 1/4, PATCH v4 1/5)

	- Declaration a global variable 'static struct default_configsets' has config variables
	with default values instead of using a 'util/PERFCONFIG-DEFAULT' file.
	(PATCH v2 3/4, PATCH v4 3/5)

	- Add a function to normalize a value and check data type of it.
	(PATCH v2 2/4, PATCH v4 3/5)

	- Simplify parsing arguments as arguments is just divided by '=' and then
	in front of '.' is a section, between '.' and '=' is a name, and behind '=' is a value.
	(PATCH v2 2/4, PATCH v4 3/5)

	- If run perf-config command without any option, perf-config work as '--list'.
	(PATCH v2 1/4, PATCH v4 1/5)

 tools/perf/Build                         |   1 +
 tools/perf/Documentation/perf-config.txt | 422 +++++++++++++++++
 tools/perf/builtin-config.c              | 769 +++++++++++++++++++++++++++++++
 tools/perf/builtin.h                     |   1 +
 tools/perf/command-list.txt              |   1 +
 tools/perf/perf.c                        |   1 +
 tools/perf/util/cache.h                  |  18 +
 tools/perf/util/config.c                 |  31 +-
 8 files changed, 1242 insertions(+), 2 deletions(-)
 create mode 100644 tools/perf/Documentation/perf-config.txt
 create mode 100644 tools/perf/builtin-config.c

-- 
1.9.1


             reply	other threads:[~2015-10-04  8:38 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-04  7:35 Taeung Song [this message]
2015-10-04  7:35 ` [PATCH v7 1/7] " Taeung Song
2015-10-21  3:10   ` Namhyung Kim
2015-10-04  7:35 ` [PATCH v7 2/7] perf config: Add '--system' and '--user' options to select which config file is used Taeung Song
2015-10-21  4:20   ` Namhyung Kim
2015-10-21 10:32     ` TaeWoong Song
2015-10-04  7:35 ` [PATCH v7 3/7] perf config: Add a option 'list-all' to perf-config Taeung Song
2015-10-21  5:11   ` Namhyung Kim
2015-10-04  7:35 ` [PATCH v7 4/7] perf config: Add 'get' functionality Taeung Song
2015-10-04  7:35 ` [PATCH v7 5/7] perf config: Add 'set' feature Taeung Song
2015-10-04  7:35 ` [PATCH v7 6/7] perf config: normalize a value depending on default type of it Taeung Song
2015-10-04  7:35 ` [PATCH v7 7/7] perf config: Add a option 'remove' to perf-config Taeung Song

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1443944110-6414-1-git-send-email-treeze.taeung@gmail.com \
    --to=treeze.taeung@gmail.com \
    --cc=acme@kernel.org \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome