From: tip-bot for Yunlong Song <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: wangnan0@huawei.com, linux-kernel@vger.kernel.org,
tglx@linutronix.de, acme@redhat.com, yunlong.song@huawei.com,
hpa@zytor.com, paulus@samba.org, a.p.zijlstra@chello.nl,
mingo@kernel.org
Subject: [tip:perf/core] perf data: Support using -f to override perf.data file ownership for 'convert'
Date: Thu, 2 Apr 2015 22:10:41 -0700 [thread overview]
Message-ID: <tip-bd05954bfa17f03a7bd4454178ba09786b35e383@git.kernel.org> (raw)
In-Reply-To: <1427982439-27388-11-git-send-email-yunlong.song@huawei.com>
Commit-ID: bd05954bfa17f03a7bd4454178ba09786b35e383
Gitweb: http://git.kernel.org/tip/bd05954bfa17f03a7bd4454178ba09786b35e383
Author: Yunlong Song <yunlong.song@huawei.com>
AuthorDate: Thu, 2 Apr 2015 21:47:19 +0800
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Thu, 2 Apr 2015 13:18:52 -0300
perf data: Support using -f to override perf.data file ownership for 'convert'
Enable perf data convert to use perf.data when it is not owned by
current user or root.
Example:
# perf record ls
# chown Yunlong.Song:Yunlong.Song perf.data
# ls -al perf.data
-rw------- 1 Yunlong.Song Yunlong.Song 28260 Apr 2 17:35 perf.data
# id
uid=0(root) gid=0(root) groups=0(root),64(pkcs11)
Before this patch:
# perf data convert --to-ctf=./ctf-data/
File perf.data not owned by current user or root (use -f to override)
# perf data convert --to-ctf=./ctf-data/ -f
Error: unknown switch `f'
usage: perf data convert [<options>]
-v, --verbose be more verbose
-i, --input <file> input file name
--to-ctf ... Convert to CTF format
After this patch:
# perf data convert --to-ctf=./ctf-data/
File perf.data not owned by current user or root (use -f to override)
# perf data convert --to-ctf=./ctf-data/ -f
# ls ctf-data/
metadata perf_stream_0
As shown above, the -f option really works now.
Signed-off-by: Yunlong Song <yunlong.song@huawei.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1427982439-27388-11-git-send-email-yunlong.song@huawei.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-data.c | 4 +++-
tools/perf/util/data-convert-bt.c | 3 ++-
tools/perf/util/data-convert-bt.h | 2 +-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/tools/perf/builtin-data.c b/tools/perf/builtin-data.c
index 709152a..d6525bc 100644
--- a/tools/perf/builtin-data.c
+++ b/tools/perf/builtin-data.c
@@ -53,12 +53,14 @@ static int cmd_data_convert(int argc, const char **argv,
const char *prefix __maybe_unused)
{
const char *to_ctf = NULL;
+ bool force = false;
const struct option options[] = {
OPT_INCR('v', "verbose", &verbose, "be more verbose"),
OPT_STRING('i', "input", &input_name, "file", "input file name"),
#ifdef HAVE_LIBBABELTRACE_SUPPORT
OPT_STRING(0, "to-ctf", &to_ctf, NULL, "Convert to CTF format"),
#endif
+ OPT_BOOLEAN('f', "force", &force, "don't complain, do it"),
OPT_END()
};
@@ -76,7 +78,7 @@ static int cmd_data_convert(int argc, const char **argv,
if (to_ctf) {
#ifdef HAVE_LIBBABELTRACE_SUPPORT
- return bt_convert__perf2ctf(input_name, to_ctf);
+ return bt_convert__perf2ctf(input_name, to_ctf, force);
#else
pr_err("The libbabeltrace support is not compiled in.\n");
return -1;
diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
index c6d6226..dd17c9a 100644
--- a/tools/perf/util/data-convert-bt.c
+++ b/tools/perf/util/data-convert-bt.c
@@ -791,12 +791,13 @@ err:
return -1;
}
-int bt_convert__perf2ctf(const char *input, const char *path)
+int bt_convert__perf2ctf(const char *input, const char *path, bool force)
{
struct perf_session *session;
struct perf_data_file file = {
.path = input,
.mode = PERF_DATA_MODE_READ,
+ .force = force,
};
struct convert c = {
.tool = {
diff --git a/tools/perf/util/data-convert-bt.h b/tools/perf/util/data-convert-bt.h
index dda30c5..4c20434 100644
--- a/tools/perf/util/data-convert-bt.h
+++ b/tools/perf/util/data-convert-bt.h
@@ -2,7 +2,7 @@
#define __DATA_CONVERT_BT_H
#ifdef HAVE_LIBBABELTRACE_SUPPORT
-int bt_convert__perf2ctf(const char *input_name, const char *to_ctf);
+int bt_convert__perf2ctf(const char *input_name, const char *to_ctf, bool force);
#endif /* HAVE_LIBBABELTRACE_SUPPORT */
#endif /* __DATA_CONVERT_BT_H */
next prev parent reply other threads:[~2015-04-03 5:11 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-02 13:47 [PATCH 00/10] perf tools: Support using -f to override file ownership for perf commands Yunlong Song
2015-04-02 13:47 ` [PATCH 01/10] perf tools: Support using -f to override perf.data file ownership for evlist Yunlong Song
2015-04-03 5:08 ` [tip:perf/core] perf evlist: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 02/10] perf tools: Support using -f to override perf.data file ownership for inject Yunlong Song
2015-04-03 5:08 ` [tip:perf/core] perf inject: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 03/10] perf tools: Support using -f to override perf.data file ownership for kmem Yunlong Song
2015-04-03 5:08 ` [tip:perf/core] perf kmem: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 04/10] perf tools: Support using -f to override perf.data.guest file ownership for kvm Yunlong Song
2015-04-03 5:08 ` [tip:perf/core] perf kvm: Support using -f to override perf.data.guest file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 05/10] perf tools: Support using -f to override perf.data file ownership for lock Yunlong Song
2015-04-03 5:09 ` [tip:perf/core] perf lock: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 06/10] perf tools: Support using -f to override perf.data file ownership for mem Yunlong Song
2015-04-03 5:09 ` [tip:perf/core] perf mem: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 07/10] perf tools: Support using -f to override perf.data file ownership for script Yunlong Song
2015-04-03 5:09 ` [tip:perf/core] perf script: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 08/10] perf tools: Support using -f to override perf.data file ownership for timechart Yunlong Song
2015-04-03 5:10 ` [tip:perf/core] perf timechart: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 09/10] perf tools: Support using -f to override perf.data file ownership for trace Yunlong Song
2015-04-03 5:10 ` [tip:perf/core] perf trace: Support using -f to override perf.data file ownership tip-bot for Yunlong Song
2015-04-02 13:47 ` [PATCH 10/10] perf tools: Support using -f to override perf.data file ownership for data convert Yunlong Song
2015-04-03 5:10 ` tip-bot for Yunlong Song [this message]
2015-04-02 15:13 ` [PATCH 00/10] perf tools: Support using -f to override file ownership for perf commands Arnaldo Carvalho de Melo
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=tip-bd05954bfa17f03a7bd4454178ba09786b35e383@git.kernel.org \
--to=tipbot@zytor.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@redhat.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=paulus@samba.org \
--cc=tglx@linutronix.de \
--cc=wangnan0@huawei.com \
--cc=yunlong.song@huawei.com \
/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 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.