* Re: [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior.
2013-12-04 22:56 ` [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior Dongsheng Yang
@ 2013-12-04 14:27 ` Arnaldo Carvalho de Melo
2013-12-05 21:55 ` Dongsheng Yang
2013-12-10 9:17 ` [tip:perf/core] perf kvm: Update the 'record' man page entry for new --guest/--host behavior tip-bot for Dongsheng Yang
1 sibling, 1 reply; 13+ messages in thread
From: Arnaldo Carvalho de Melo @ 2013-12-04 14:27 UTC (permalink / raw)
To: Dongsheng Yang
Cc: dsahern, jolsa, Ingo Molnar, a.p.zijlstra, paulus, linux-kernel,
Pekka Enberg, Zhang, Yanmin, Joerg Roedel, Xiao Guangrong
Em Wed, Dec 04, 2013 at 05:56:41PM -0500, Dongsheng Yang escreveu:
> As we have changed the default behavior of perf kvm to --guest enabled,
> the document about perf kvm record is outdated. This patch update it to
> show the correct output with --host/--guest/neither/both of them.
> +++ b/tools/perf/Documentation/perf-kvm.txt
> @@ -24,10 +24,17 @@ There are a couple of variants of perf kvm:
> of an arbitrary workload.
> 'perf kvm record <command>' to record the performance counter profile
> - of an arbitrary workload and save it into a perf data file. If both
> - --host and --guest are input, the perf data file name is perf.data.kvm.
> - If there is no --host but --guest, the file name is perf.data.guest.
> - If there is no --guest but --host, the file name is perf.data.host.
> + of an arbitrary workload and save it into a perf data file. We set the
> + default behavior of perf kvm as --guest, so if neither --host nor --guest
> + is input, the perf data file name is perf.data.guest. If --host is input,
> + the perf data file name is perf.data.kvm. If you want to record data into
> + perf.data.host, please input --host --no-guest. The behaviors are shown as
> + following:
Perhaps this is clearer:
"Use 'perf kvm record <command>' to record the a profile of an arbitrary
workload and save it into a perf.data file. The default is to record
guest samples, use --host to ask for just host samples or both --guest
and --host for both kinds of samples to be taken."
Argh, then I wonder why do we have --guest if the only possibility,
according to the text above, is for it to be used in the --no-guest
variant, is that the case?
Do we really, really need to have those .host or .guest or .kvm filename
suffixes?
Can't we have this somehow encoded in the perf.data file header and show
it when doing a report? humm, it is already, and we can see it already
in 'perf evlist':
[root@ssdandy ~]# perf kvm record -a
^C[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 1.489 MB perf.data.guest (~65058 samples) ]
[root@ssdandy ~]# perf evlist
raw_syscalls:sys_enter
raw_syscalls:sys_exit
[root@ssdandy ~]# perf evlist -v
raw_syscalls:sys_enter: sample_freq=1, type: 2, config: 41, size: 96,
sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID,
disabled: 1, inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1,
sample_id_all: 1, exclude_guest: 1
raw_syscalls:sys_exit: sample_freq=1, type: 2, config: 40, size: 96,
sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID,
disabled: 1, inherit: 1, enable_on_exec: 1, sample_id_all: 1,
exclude_guest: 1
[root@ssdandy ~]#
Humm, strange, the exclude_guest bit is set, which doesn't look like it
matches that text...
Lemme try explicitely using --guest and --host:
[root@ssdandy ~]# perf kvm --guest record sleep 2
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.012 MB perf.data.guest (~532 samples) ]
[root@ssdandy ~]# perf evlist -v
raw_syscalls:sys_enter: sample_freq=1, type: 2, config: 41, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
raw_syscalls:sys_exit: sample_freq=1, type: 2, config: 40, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
[root@ssdandy ~]#
exclude_guest still there...
Then:
[root@ssdandy ~]# perf kvm --host record sleep 2
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.012 MB perf.data.kvm (~544 samples) ]
[root@ssdandy ~]# perf evlist -v
raw_syscalls:sys_enter: sample_freq=1, type: 2, config: 41, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
raw_syscalls:sys_exit: sample_freq=1, type: 2, config: 40, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
[root@ssdandy ~]#
Still there... oops, I've been just bitten by this odd suffixes convention,
as 'perf evlist', like all other tools, by default will look at 'perf.data', not
the 'perf kvm' convention...
So again:
[root@ssdandy ~]# perf kvm --guest record -a
^C[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 1.060 MB perf.data.guest (~46303 samples) ]
[root@ssdandy ~]# ls -lart perf.data* | tail -1
-rw-------. 1 root root 1113684 Dec 4 11:11 perf.data.guest
[root@ssdandy ~]# perf evlist -v -i perf.data.guest
cycles: sample_freq=4000, size: 96, sample_type: IP|TID|TIME|CPU|PERIOD, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, sample_id_all: 1, exclude_host: 1
[root@ssdandy ~]#
Matches the documentation, i.e. perf_event_attr.exclude_guest is not set,
meaning --guest, and .exclude_host is set, ok.
[root@ssdandy ~]# perf kvm --host record sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.013 MB perf.data.kvm (~554 samples) ]
[root@ssdandy ~]# ls -lart perf.data* | tail -1
-rw-------. 1 root root 15976 Dec 4 11:13 perf.data.kvm
[root@ssdandy ~]# perf evlist -v -i perf.data.kvm
cycles: sample_freq=4000, size: 96, sample_type: IP|TID|TIME|PERIOD, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, enable_on_exec: 1, sample_id_all: 1
[root@ssdandy ~]#
Yes, 'perf kvm record --host' actually means: "perf kvm --host --guest', as
both exclude_{host,guest} are zeroed.
[root@ssdandy ~]# perf kvm --host --no-guest record sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.013 MB perf.data.host (~552 samples) ]
[root@ssdandy ~]# ls -lart perf.data* | tail -1
-rw-------. 1 root root 15904 Dec 4 11:14 perf.data.host
[root@ssdandy ~]# perf evlist -v -i perf.data.host
cycles: sample_freq=4000, size: 96, sample_type: IP|TID|TIME|PERIOD, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
[root@ssdandy ~]#
Seems all ok, just not immediately intuitive.
I would expect one to do: (yeah, there was a discussion long ago, can't
remember the details right now, should have paid more attention at the
time :-\)
perf kvm record <target>
to mean:
perf kvm record --host --guest <target>
and generate a perf.data file, just like all other tools.
What about 'perf kvm report', I think one will have to point it to the
right file to use, using -i, right? So doing it at 'perf kvm record'
explicitely as well will reduce confusion and make it behave just like
all the other tools?
Comments?
- Arnaldo
> + Default('') -> perf.data.guest
> + --host -> perf.data.kvm
> + --guest -> perf.data.guest
> + --host --guest -> perf.data.kvm
> + --host --no-guest -> perf.data.host
>
> 'perf kvm report' to display the performance counter profile information
> recorded via perf kvm record.
> --
> 1.8.2.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 0/5] perf tools: some update for perf tool.
@ 2013-12-04 22:56 Dongsheng Yang
2013-12-04 22:56 ` [PATCH 1/5] perf tools: Remove condition in machine__get_kernel_start_addr Dongsheng Yang
` (4 more replies)
0 siblings, 5 replies; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-04 22:56 UTC (permalink / raw)
To: dsahern, jolsa, acme, mingo, a.p.zijlstra, paulus
Cc: linux-kernel, Dongsheng Yang
Hi all,
When I read the code and document of perf tool as a newbie,
I feel confused in some places. Then I made some patches here to make
them more clear.
Please help to review them.
Note: The last 3 commits are all about perf-kvm.txt. I splite them
to make the logic more clear. If you think it is not necessary, I am
ok to squash them into one commit.
Thanx
Yang
Dongsheng Yang (5):
perf tools: Remove condition in machine__get_kernel_start_addr.
perf tools: Move the checking of which map function to call into
function.
perf tools: Update the Document for perf kvm record for new behavior.
perf tools: Add more detail about buildid-list in Document of
perf-kvm.
perf tool: Fix a type of '=' in Document of perf-kvm.
tools/perf/Documentation/perf-kvm.txt | 27 ++++++++++++++++++---------
tools/perf/util/evlist.c | 8 +-------
tools/perf/util/machine.c | 14 +++++---------
tools/perf/util/target.h | 13 +++++++++++++
4 files changed, 37 insertions(+), 25 deletions(-)
--
1.8.2.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 1/5] perf tools: Remove condition in machine__get_kernel_start_addr.
2013-12-04 22:56 [PATCH 0/5] perf tools: some update for perf tool Dongsheng Yang
@ 2013-12-04 22:56 ` Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] " tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 2/5] perf tools: Move the checking of which map function to call into function Dongsheng Yang
` (3 subsequent siblings)
4 siblings, 1 reply; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-04 22:56 UTC (permalink / raw)
To: dsahern, jolsa, acme, mingo, a.p.zijlstra, paulus
Cc: linux-kernel, Dongsheng Yang
In machine__get_kernel_start_addr, the code, which is
using machine->root_dir to build filename, works for both
host and guests initialized from guestmount. So this patch
remove the branch for machine__is_host.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
---
tools/perf/util/machine.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c
index 84cdb07..bac817a 100644
--- a/tools/perf/util/machine.c
+++ b/tools/perf/util/machine.c
@@ -502,15 +502,11 @@ static u64 machine__get_kernel_start_addr(struct machine *machine)
char path[PATH_MAX];
struct process_args args;
- if (machine__is_host(machine)) {
- filename = "/proc/kallsyms";
- } else {
- if (machine__is_default_guest(machine))
- filename = (char *)symbol_conf.default_guest_kallsyms;
- else {
- sprintf(path, "%s/proc/kallsyms", machine->root_dir);
- filename = path;
- }
+ if (machine__is_default_guest(machine))
+ filename = (char *)symbol_conf.default_guest_kallsyms;
+ else {
+ sprintf(path, "%s/proc/kallsyms", machine->root_dir);
+ filename = path;
}
if (symbol__restricted_filename(filename, "/proc/kallsyms"))
--
1.8.2.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 2/5] perf tools: Move the checking of which map function to call into function.
2013-12-04 22:56 [PATCH 0/5] perf tools: some update for perf tool Dongsheng Yang
2013-12-04 22:56 ` [PATCH 1/5] perf tools: Remove condition in machine__get_kernel_start_addr Dongsheng Yang
@ 2013-12-04 22:56 ` Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] perf target: " tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior Dongsheng Yang
` (2 subsequent siblings)
4 siblings, 1 reply; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-04 22:56 UTC (permalink / raw)
To: dsahern, jolsa, acme, mingo, a.p.zijlstra, paulus
Cc: linux-kernel, Dongsheng Yang
Check for cpu_map__dummy_new() or cpu_map__new() to be called in
perf_evlist__create_maps() is more complicated. This patch moves
the checking work into target.h, combining two conditions and making
perf_evlist__create_maps() more readable.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
---
tools/perf/util/evlist.c | 8 +-------
tools/perf/util/target.h | 13 +++++++++++++
2 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index 76fa764..7bb6ee1 100644
--- a/tools/perf/util/evlist.c
+++ b/tools/perf/util/evlist.c
@@ -819,13 +819,7 @@ int perf_evlist__create_maps(struct perf_evlist *evlist, struct target *target)
if (evlist->threads == NULL)
return -1;
- if (target->default_per_cpu)
- evlist->cpus = target->per_thread ?
- cpu_map__dummy_new() :
- cpu_map__new(target->cpu_list);
- else if (target__has_task(target))
- evlist->cpus = cpu_map__dummy_new();
- else if (!target__has_cpu(target) && !target->uses_mmap)
+ if (target__uses_dummy_map(target))
evlist->cpus = cpu_map__dummy_new();
else
evlist->cpus = cpu_map__new(target->cpu_list);
diff --git a/tools/perf/util/target.h b/tools/perf/util/target.h
index 31dd2e9..7381b1c 100644
--- a/tools/perf/util/target.h
+++ b/tools/perf/util/target.h
@@ -63,4 +63,17 @@ static inline bool target__none(struct target *target)
return !target__has_task(target) && !target__has_cpu(target);
}
+static inline bool target__uses_dummy_map(struct target *target)
+{
+ bool use_dummy = false;
+
+ if (target->default_per_cpu)
+ use_dummy = target->per_thread ? true : false;
+ else if (target__has_task(target) ||
+ (!target__has_cpu(target) && !target->uses_mmap))
+ use_dummy = true;
+
+ return use_dummy;
+}
+
#endif /* _PERF_TARGET_H */
--
1.8.2.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior.
2013-12-04 22:56 [PATCH 0/5] perf tools: some update for perf tool Dongsheng Yang
2013-12-04 22:56 ` [PATCH 1/5] perf tools: Remove condition in machine__get_kernel_start_addr Dongsheng Yang
2013-12-04 22:56 ` [PATCH 2/5] perf tools: Move the checking of which map function to call into function Dongsheng Yang
@ 2013-12-04 22:56 ` Dongsheng Yang
2013-12-04 14:27 ` Arnaldo Carvalho de Melo
2013-12-10 9:17 ` [tip:perf/core] perf kvm: Update the 'record' man page entry for new --guest/--host behavior tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 4/5] perf tools: Add more detail about buildid-list in Document of perf-kvm Dongsheng Yang
2013-12-04 22:56 ` [PATCH 5/5] perf tool: Fix a type of '=' in Document of perf-kvm Dongsheng Yang
4 siblings, 2 replies; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-04 22:56 UTC (permalink / raw)
To: dsahern, jolsa, acme, mingo, a.p.zijlstra, paulus
Cc: linux-kernel, Dongsheng Yang
As we have changed the default behavior of perf kvm to --guest enabled,
the document about perf kvm record is outdated. This patch update it to
show the correct output with --host/--guest/neither/both of them.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
---
tools/perf/Documentation/perf-kvm.txt | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/tools/perf/Documentation/perf-kvm.txt b/tools/perf/Documentation/perf-kvm.txt
index 6a06cef..830613a 100644
--- a/tools/perf/Documentation/perf-kvm.txt
+++ b/tools/perf/Documentation/perf-kvm.txt
@@ -24,10 +24,17 @@ There are a couple of variants of perf kvm:
of an arbitrary workload.
'perf kvm record <command>' to record the performance counter profile
- of an arbitrary workload and save it into a perf data file. If both
- --host and --guest are input, the perf data file name is perf.data.kvm.
- If there is no --host but --guest, the file name is perf.data.guest.
- If there is no --guest but --host, the file name is perf.data.host.
+ of an arbitrary workload and save it into a perf data file. We set the
+ default behavior of perf kvm as --guest, so if neither --host nor --guest
+ is input, the perf data file name is perf.data.guest. If --host is input,
+ the perf data file name is perf.data.kvm. If you want to record data into
+ perf.data.host, please input --host --no-guest. The behaviors are shown as
+ following:
+ Default('') -> perf.data.guest
+ --host -> perf.data.kvm
+ --guest -> perf.data.guest
+ --host --guest -> perf.data.kvm
+ --host --no-guest -> perf.data.host
'perf kvm report' to display the performance counter profile information
recorded via perf kvm record.
--
1.8.2.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 4/5] perf tools: Add more detail about buildid-list in Document of perf-kvm.
2013-12-04 22:56 [PATCH 0/5] perf tools: some update for perf tool Dongsheng Yang
` (2 preceding siblings ...)
2013-12-04 22:56 ` [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior Dongsheng Yang
@ 2013-12-04 22:56 ` Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] perf kvm: Add more detail about buildid-list in man page tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 5/5] perf tool: Fix a type of '=' in Document of perf-kvm Dongsheng Yang
4 siblings, 1 reply; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-04 22:56 UTC (permalink / raw)
To: dsahern, jolsa, acme, mingo, a.p.zijlstra, paulus
Cc: linux-kernel, Dongsheng Yang
As the buildid is read from /sys/kernel/notes, then if we use perf kvm buildid-list
with a perf data file captured by perf kvm record with --guestkallsyms and --guestmodules,
there is no result in output. This patch add a explanation about it and add a limit
of using perf kvm buildid-list.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
---
tools/perf/Documentation/perf-kvm.txt | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/perf/Documentation/perf-kvm.txt b/tools/perf/Documentation/perf-kvm.txt
index 830613a..be1d263 100644
--- a/tools/perf/Documentation/perf-kvm.txt
+++ b/tools/perf/Documentation/perf-kvm.txt
@@ -44,7 +44,9 @@ There are a couple of variants of perf kvm:
'perf kvm buildid-list' to display the buildids found in a perf data file,
so that other tools can be used to fetch packages with matching symbol tables
- for use by perf report.
+ for use by perf report. As buildid is read from /sys/kernel/notes in os, then
+ if you want to list the buildid for guest, please make sure your perf data file
+ was captured with --guestmount in perf kvm record.
'perf kvm stat <command>' to run a command and gather performance counter
statistics.
--
1.8.2.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 5/5] perf tool: Fix a type of '=' in Document of perf-kvm.
2013-12-04 22:56 [PATCH 0/5] perf tools: some update for perf tool Dongsheng Yang
` (3 preceding siblings ...)
2013-12-04 22:56 ` [PATCH 4/5] perf tools: Add more detail about buildid-list in Document of perf-kvm Dongsheng Yang
@ 2013-12-04 22:56 ` Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] perf kvm: Fix spurious '=' use in man page tip-bot for Dongsheng Yang
4 siblings, 1 reply; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-04 22:56 UTC (permalink / raw)
To: dsahern, jolsa, acme, mingo, a.p.zijlstra, paulus
Cc: linux-kernel, Dongsheng Yang
As option --host and --guest request no input for it, there should
not be a '=' after them in Document. And --output request a filename
as the input, so there should be a '=' after it. This patch remove
the wrong '=' after --guest and --host, and add a '=' after --output
in perf-kvm.txt.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
---
tools/perf/Documentation/perf-kvm.txt | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tools/perf/Documentation/perf-kvm.txt b/tools/perf/Documentation/perf-kvm.txt
index be1d263..96a9a1d 100644
--- a/tools/perf/Documentation/perf-kvm.txt
+++ b/tools/perf/Documentation/perf-kvm.txt
@@ -67,14 +67,14 @@ There are a couple of variants of perf kvm:
OPTIONS
-------
-i::
---input=::
+--input=<path>::
Input file name.
-o::
---output::
+--output=<path>::
Output file name.
---host=::
+--host::
Collect host side performance profile.
---guest=::
+--guest::
Collect guest side performance profile.
--guestmount=<path>::
Guest os root file system mount directory. Users mounts guest os
--
1.8.2.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior.
2013-12-04 14:27 ` Arnaldo Carvalho de Melo
@ 2013-12-05 21:55 ` Dongsheng Yang
0 siblings, 0 replies; 13+ messages in thread
From: Dongsheng Yang @ 2013-12-05 21:55 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: dsahern, jolsa, Ingo Molnar, a.p.zijlstra, paulus, linux-kernel,
Pekka Enberg, Zhang, Yanmin, Joerg Roedel, Xiao Guangrong
On 12/04/2013 09:27 AM, Arnaldo Carvalho de Melo wrote:
> Em Wed, Dec 04, 2013 at 05:56:41PM -0500, Dongsheng Yang escreveu:
>> As we have changed the default behavior of perf kvm to --guest enabled,
>> the document about perf kvm record is outdated. This patch update it to
>> show the correct output with --host/--guest/neither/both of them.
>
>> +++ b/tools/perf/Documentation/perf-kvm.txt
>> @@ -24,10 +24,17 @@ There are a couple of variants of perf kvm:
>> of an arbitrary workload.
>
>> 'perf kvm record <command>' to record the performance counter profile
>> - of an arbitrary workload and save it into a perf data file. If both
>> - --host and --guest are input, the perf data file name is perf.data.kvm.
>> - If there is no --host but --guest, the file name is perf.data.guest.
>> - If there is no --guest but --host, the file name is perf.data.host.
>> + of an arbitrary workload and save it into a perf data file. We set the
>> + default behavior of perf kvm as --guest, so if neither --host nor --guest
>> + is input, the perf data file name is perf.data.guest. If --host is input,
>> + the perf data file name is perf.data.kvm. If you want to record data into
>> + perf.data.host, please input --host --no-guest. The behaviors are shown as
>> + following:
> Perhaps this is clearer:
>
> "Use 'perf kvm record <command>' to record the a profile of an arbitrary
> workload and save it into a perf.data file. The default is to record
> guest samples, use --host to ask for just host samples or both --guest
> and --host for both kinds of samples to be taken."
>
> Argh, then I wonder why do we have --guest if the only possibility,
> according to the text above, is for it to be used in the --no-guest
> variant, is that the case?
>
> Do we really, really need to have those .host or .guest or .kvm filename
> suffixes?
>
> Can't we have this somehow encoded in the perf.data file header and show
> it when doing a report? humm, it is already, and we can see it already
> in 'perf evlist':
>
> [root@ssdandy ~]# perf kvm record -a
> ^C[ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 1.489 MB perf.data.guest (~65058 samples) ]
> [root@ssdandy ~]# perf evlist
> raw_syscalls:sys_enter
> raw_syscalls:sys_exit
> [root@ssdandy ~]# perf evlist -v
> raw_syscalls:sys_enter: sample_freq=1, type: 2, config: 41, size: 96,
> sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID,
> disabled: 1, inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1,
> sample_id_all: 1, exclude_guest: 1
> raw_syscalls:sys_exit: sample_freq=1, type: 2, config: 40, size: 96,
> sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID,
> disabled: 1, inherit: 1, enable_on_exec: 1, sample_id_all: 1,
> exclude_guest: 1
> [root@ssdandy ~]#
>
> Humm, strange, the exclude_guest bit is set, which doesn't look like it
> matches that text...
>
> Lemme try explicitely using --guest and --host:
>
> [root@ssdandy ~]# perf kvm --guest record sleep 2
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.012 MB perf.data.guest (~532 samples) ]
> [root@ssdandy ~]# perf evlist -v
> raw_syscalls:sys_enter: sample_freq=1, type: 2, config: 41, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
> raw_syscalls:sys_exit: sample_freq=1, type: 2, config: 40, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
> [root@ssdandy ~]#
>
> exclude_guest still there...
>
> Then:
>
> [root@ssdandy ~]# perf kvm --host record sleep 2
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.012 MB perf.data.kvm (~544 samples) ]
> [root@ssdandy ~]# perf evlist -v
> raw_syscalls:sys_enter: sample_freq=1, type: 2, config: 41, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
> raw_syscalls:sys_exit: sample_freq=1, type: 2, config: 40, size: 96, sample_type: IP|TID|TIME|CALLCHAIN|ID|CPU|PERIOD|RAW, read_format: ID, disabled: 1, inherit: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
> [root@ssdandy ~]#
>
> Still there... oops, I've been just bitten by this odd suffixes convention,
> as 'perf evlist', like all other tools, by default will look at 'perf.data', not
> the 'perf kvm' convention...
...
>
> So again:
>
> [root@ssdandy ~]# perf kvm --guest record -a
> ^C[ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 1.060 MB perf.data.guest (~46303 samples) ]
> [root@ssdandy ~]# ls -lart perf.data* | tail -1
> -rw-------. 1 root root 1113684 Dec 4 11:11 perf.data.guest
> [root@ssdandy ~]# perf evlist -v -i perf.data.guest
> cycles: sample_freq=4000, size: 96, sample_type: IP|TID|TIME|CPU|PERIOD, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, sample_id_all: 1, exclude_host: 1
> [root@ssdandy ~]#
>
> Matches the documentation, i.e. perf_event_attr.exclude_guest is not set,
> meaning --guest, and .exclude_host is set, ok.
>
> [root@ssdandy ~]# perf kvm --host record sleep 1
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.013 MB perf.data.kvm (~554 samples) ]
> [root@ssdandy ~]# ls -lart perf.data* | tail -1
> -rw-------. 1 root root 15976 Dec 4 11:13 perf.data.kvm
> [root@ssdandy ~]# perf evlist -v -i perf.data.kvm
> cycles: sample_freq=4000, size: 96, sample_type: IP|TID|TIME|PERIOD, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, enable_on_exec: 1, sample_id_all: 1
> [root@ssdandy ~]#
>
> Yes, 'perf kvm record --host' actually means: "perf kvm --host --guest', as
> both exclude_{host,guest} are zeroed.
>
> [root@ssdandy ~]# perf kvm --host --no-guest record sleep 1
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.013 MB perf.data.host (~552 samples) ]
> [root@ssdandy ~]# ls -lart perf.data* | tail -1
> -rw-------. 1 root root 15904 Dec 4 11:14 perf.data.host
> [root@ssdandy ~]# perf evlist -v -i perf.data.host
> cycles: sample_freq=4000, size: 96, sample_type: IP|TID|TIME|PERIOD, disabled: 1, inherit: 1, mmap: 1, comm: 1, freq: 1, enable_on_exec: 1, sample_id_all: 1, exclude_guest: 1
> [root@ssdandy ~]#
>
> Seems all ok, just not immediately intuitive.
Okey, thanx for your verification. More detail will be added in my
patches in future.
>
> I would expect one to do: (yeah, there was a discussion long ago, can't
> remember the details right now, should have paid more attention at the
> time :-\)
>
> perf kvm record <target>
>
> to mean:
>
> perf kvm record --host --guest <target>
Do you mean we should change the default behavior of perf kvm to --host
and --guest?
Hmmm, IMHO, --guest is used more frequently.
>
> and generate a perf.data file, just like all other tools.
Yes, just using perf.data is good to me.
> What about 'perf kvm report', I think one will have to point it to the
> right file to use, using -i, right?
Currently, it will check the perf_guest and perf_host to decide perf
data file name if
we did not use -i for it, same with perf kvm record.
> So doing it at 'perf kvm record'
> explicitely as well will reduce confusion and make it behave just like
> all the other tools?
>
> Comments?
Arnaldo, I think the problem here is that do we really need the suffixes
for perf kvm.
Maybe your discussion long ago can make this problem more clear :).
- Yang
> - Arnaldo
>
>> + Default('') -> perf.data.guest
>> + --host -> perf.data.kvm
>> + --guest -> perf.data.guest
>> + --host --guest -> perf.data.kvm
>> + --host --no-guest -> perf.data.host
>>
>> 'perf kvm report' to display the performance counter profile information
>> recorded via perf kvm record.
>> --
>> 1.8.2.1
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* [tip:perf/core] perf tools: Remove condition in machine__get_kernel_start_addr.
2013-12-04 22:56 ` [PATCH 1/5] perf tools: Remove condition in machine__get_kernel_start_addr Dongsheng Yang
@ 2013-12-10 9:16 ` tip-bot for Dongsheng Yang
0 siblings, 0 replies; 13+ messages in thread
From: tip-bot for Dongsheng Yang @ 2013-12-10 9:16 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, paulus, mingo, hpa, mingo, a.p.zijlstra,
jolsa, dsahern, tglx, yangds.fnst
Commit-ID: 2f37573507643407d0a8f38c676ed2e90b795db3
Gitweb: http://git.kernel.org/tip/2f37573507643407d0a8f38c676ed2e90b795db3
Author: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
AuthorDate: Wed, 4 Dec 2013 17:56:39 -0500
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 4 Dec 2013 13:46:36 -0300
perf tools: Remove condition in machine__get_kernel_start_addr.
In machine__get_kernel_start_addr, the code, which is using
machine->root_dir to build filename, works for both host and guests
initialized from guestmount, as root_dir is set to "" for the host
machine in the machine__init() function.
So this patch remove the branch for machine__is_host.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/0a81645dd0b384a12cb4f962cf193ef8c3ce2010.1386197481.git.yangds.fnst@cn.fujitsu.com
[ Clarified changeset mentioning root_dir setup in machine__init() ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/machine.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c
index 84cdb07..bac817a 100644
--- a/tools/perf/util/machine.c
+++ b/tools/perf/util/machine.c
@@ -502,15 +502,11 @@ static u64 machine__get_kernel_start_addr(struct machine *machine)
char path[PATH_MAX];
struct process_args args;
- if (machine__is_host(machine)) {
- filename = "/proc/kallsyms";
- } else {
- if (machine__is_default_guest(machine))
- filename = (char *)symbol_conf.default_guest_kallsyms;
- else {
- sprintf(path, "%s/proc/kallsyms", machine->root_dir);
- filename = path;
- }
+ if (machine__is_default_guest(machine))
+ filename = (char *)symbol_conf.default_guest_kallsyms;
+ else {
+ sprintf(path, "%s/proc/kallsyms", machine->root_dir);
+ filename = path;
}
if (symbol__restricted_filename(filename, "/proc/kallsyms"))
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [tip:perf/core] perf target: Move the checking of which map function to call into function.
2013-12-04 22:56 ` [PATCH 2/5] perf tools: Move the checking of which map function to call into function Dongsheng Yang
@ 2013-12-10 9:16 ` tip-bot for Dongsheng Yang
0 siblings, 0 replies; 13+ messages in thread
From: tip-bot for Dongsheng Yang @ 2013-12-10 9:16 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, paulus, mingo, hpa, mingo, a.p.zijlstra,
jolsa, dsahern, tglx, yangds.fnst
Commit-ID: 9c105fbc94a67ea5943d309d9a78ca669e0ddc61
Gitweb: http://git.kernel.org/tip/9c105fbc94a67ea5943d309d9a78ca669e0ddc61
Author: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
AuthorDate: Wed, 4 Dec 2013 17:56:40 -0500
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 4 Dec 2013 13:46:37 -0300
perf target: Move the checking of which map function to call into function.
Check for cpu_map__dummy_new() or cpu_map__new() to be called in
perf_evlist__create_maps() is more complicated.
This patch moves the checking work into target.h, combining two
conditions and making perf_evlist__create_maps() more readable.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/b8c41f1fd2c4f0df71eb7b19aea74fb64d46cdda.1386197481.git.yangds.fnst@cn.fujitsu.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/evlist.c | 8 +-------
tools/perf/util/target.h | 13 +++++++++++++
2 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index 76fa764..7bb6ee1 100644
--- a/tools/perf/util/evlist.c
+++ b/tools/perf/util/evlist.c
@@ -819,13 +819,7 @@ int perf_evlist__create_maps(struct perf_evlist *evlist, struct target *target)
if (evlist->threads == NULL)
return -1;
- if (target->default_per_cpu)
- evlist->cpus = target->per_thread ?
- cpu_map__dummy_new() :
- cpu_map__new(target->cpu_list);
- else if (target__has_task(target))
- evlist->cpus = cpu_map__dummy_new();
- else if (!target__has_cpu(target) && !target->uses_mmap)
+ if (target__uses_dummy_map(target))
evlist->cpus = cpu_map__dummy_new();
else
evlist->cpus = cpu_map__new(target->cpu_list);
diff --git a/tools/perf/util/target.h b/tools/perf/util/target.h
index 31dd2e9..7381b1c 100644
--- a/tools/perf/util/target.h
+++ b/tools/perf/util/target.h
@@ -63,4 +63,17 @@ static inline bool target__none(struct target *target)
return !target__has_task(target) && !target__has_cpu(target);
}
+static inline bool target__uses_dummy_map(struct target *target)
+{
+ bool use_dummy = false;
+
+ if (target->default_per_cpu)
+ use_dummy = target->per_thread ? true : false;
+ else if (target__has_task(target) ||
+ (!target__has_cpu(target) && !target->uses_mmap))
+ use_dummy = true;
+
+ return use_dummy;
+}
+
#endif /* _PERF_TARGET_H */
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [tip:perf/core] perf kvm: Add more detail about buildid-list in man page
2013-12-04 22:56 ` [PATCH 4/5] perf tools: Add more detail about buildid-list in Document of perf-kvm Dongsheng Yang
@ 2013-12-10 9:16 ` tip-bot for Dongsheng Yang
0 siblings, 0 replies; 13+ messages in thread
From: tip-bot for Dongsheng Yang @ 2013-12-10 9:16 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, paulus, mingo, hpa, mingo, a.p.zijlstra,
jolsa, dsahern, tglx, yangds.fnst
Commit-ID: ed086d5b8a793955981f0726d8d66a03d801279b
Gitweb: http://git.kernel.org/tip/ed086d5b8a793955981f0726d8d66a03d801279b
Author: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
AuthorDate: Wed, 4 Dec 2013 17:56:42 -0500
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 4 Dec 2013 15:02:47 -0300
perf kvm: Add more detail about buildid-list in man page
As the buildid is read from /sys/kernel/notes, then if we use perf kvm
buildid-list with a perf data file captured by perf kvm record with
--guestkallsyms and --guestmodules, there is no result in output.
This patch add a explanation about it and add a limit of using perf kvm
buildid-list.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/d605a805486340b53bc261aa64d7632ad0a8cf53.1386197481.git.yangds.fnst@cn.fujitsu.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Documentation/perf-kvm.txt | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/perf/Documentation/perf-kvm.txt b/tools/perf/Documentation/perf-kvm.txt
index 6a06cef..f52f94d 100644
--- a/tools/perf/Documentation/perf-kvm.txt
+++ b/tools/perf/Documentation/perf-kvm.txt
@@ -37,7 +37,9 @@ There are a couple of variants of perf kvm:
'perf kvm buildid-list' to display the buildids found in a perf data file,
so that other tools can be used to fetch packages with matching symbol tables
- for use by perf report.
+ for use by perf report. As buildid is read from /sys/kernel/notes in os, then
+ if you want to list the buildid for guest, please make sure your perf data file
+ was captured with --guestmount in perf kvm record.
'perf kvm stat <command>' to run a command and gather performance counter
statistics.
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [tip:perf/core] perf kvm: Fix spurious '=' use in man page
2013-12-04 22:56 ` [PATCH 5/5] perf tool: Fix a type of '=' in Document of perf-kvm Dongsheng Yang
@ 2013-12-10 9:16 ` tip-bot for Dongsheng Yang
0 siblings, 0 replies; 13+ messages in thread
From: tip-bot for Dongsheng Yang @ 2013-12-10 9:16 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, paulus, mingo, hpa, mingo, a.p.zijlstra,
jolsa, dsahern, tglx, yangds.fnst
Commit-ID: 316bd98a9aa47693215e0d3a5bcc83f51691ba93
Gitweb: http://git.kernel.org/tip/316bd98a9aa47693215e0d3a5bcc83f51691ba93
Author: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
AuthorDate: Wed, 4 Dec 2013 17:56:43 -0500
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 4 Dec 2013 15:04:44 -0300
perf kvm: Fix spurious '=' use in man page
As option --host and --guest request no input for it, there should not
be a '=' after them in the man page sources.
And --output expects a filename as the input, so there should be a '='
after it.
This patch removes the needless '=' after --guest and --host, and adds a
'=' after --output in perf-kvm.txt.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/6124d9eb10a3f1f6b399d1db660110bc7a60fd6b.1386197481.git.yangds.fnst@cn.fujitsu.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Documentation/perf-kvm.txt | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tools/perf/Documentation/perf-kvm.txt b/tools/perf/Documentation/perf-kvm.txt
index f52f94d..7953227 100644
--- a/tools/perf/Documentation/perf-kvm.txt
+++ b/tools/perf/Documentation/perf-kvm.txt
@@ -60,14 +60,14 @@ There are a couple of variants of perf kvm:
OPTIONS
-------
-i::
---input=::
+--input=<path>::
Input file name.
-o::
---output::
+--output=<path>::
Output file name.
---host=::
+--host::
Collect host side performance profile.
---guest=::
+--guest::
Collect guest side performance profile.
--guestmount=<path>::
Guest os root file system mount directory. Users mounts guest os
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [tip:perf/core] perf kvm: Update the 'record' man page entry for new --guest/--host behavior
2013-12-04 22:56 ` [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior Dongsheng Yang
2013-12-04 14:27 ` Arnaldo Carvalho de Melo
@ 2013-12-10 9:17 ` tip-bot for Dongsheng Yang
1 sibling, 0 replies; 13+ messages in thread
From: tip-bot for Dongsheng Yang @ 2013-12-10 9:17 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, paulus, mingo, hpa, mingo, a.p.zijlstra,
jolsa, dsahern, tglx, yangds.fnst
Commit-ID: 8df0b4ad58081773647dd2e0fddd45e8c0022c67
Gitweb: http://git.kernel.org/tip/8df0b4ad58081773647dd2e0fddd45e8c0022c67
Author: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
AuthorDate: Wed, 4 Dec 2013 17:56:41 -0500
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 4 Dec 2013 15:06:08 -0300
perf kvm: Update the 'record' man page entry for new --guest/--host behavior
As we have changed the default behavior of 'perf kvm' to --guest
enabled, the parts of the man page that covers the 'record' subcommand
are outdated.
This patch updates it to show the correct output with
--host/--guest/neither/both of them.
Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/3a3a9c1e05acb5a274d1d8369db5a4c6467d6276.1386197481.git.yangds.fnst@cn.fujitsu.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Documentation/perf-kvm.txt | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/tools/perf/Documentation/perf-kvm.txt b/tools/perf/Documentation/perf-kvm.txt
index 7953227..96a9a1d 100644
--- a/tools/perf/Documentation/perf-kvm.txt
+++ b/tools/perf/Documentation/perf-kvm.txt
@@ -24,10 +24,17 @@ There are a couple of variants of perf kvm:
of an arbitrary workload.
'perf kvm record <command>' to record the performance counter profile
- of an arbitrary workload and save it into a perf data file. If both
- --host and --guest are input, the perf data file name is perf.data.kvm.
- If there is no --host but --guest, the file name is perf.data.guest.
- If there is no --guest but --host, the file name is perf.data.host.
+ of an arbitrary workload and save it into a perf data file. We set the
+ default behavior of perf kvm as --guest, so if neither --host nor --guest
+ is input, the perf data file name is perf.data.guest. If --host is input,
+ the perf data file name is perf.data.kvm. If you want to record data into
+ perf.data.host, please input --host --no-guest. The behaviors are shown as
+ following:
+ Default('') -> perf.data.guest
+ --host -> perf.data.kvm
+ --guest -> perf.data.guest
+ --host --guest -> perf.data.kvm
+ --host --no-guest -> perf.data.host
'perf kvm report' to display the performance counter profile information
recorded via perf kvm record.
^ permalink raw reply related [flat|nested] 13+ messages in thread
end of thread, other threads:[~2013-12-10 9:34 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-04 22:56 [PATCH 0/5] perf tools: some update for perf tool Dongsheng Yang
2013-12-04 22:56 ` [PATCH 1/5] perf tools: Remove condition in machine__get_kernel_start_addr Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] " tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 2/5] perf tools: Move the checking of which map function to call into function Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] perf target: " tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 3/5] perf tools: Update the Document for perf kvm record for new behavior Dongsheng Yang
2013-12-04 14:27 ` Arnaldo Carvalho de Melo
2013-12-05 21:55 ` Dongsheng Yang
2013-12-10 9:17 ` [tip:perf/core] perf kvm: Update the 'record' man page entry for new --guest/--host behavior tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 4/5] perf tools: Add more detail about buildid-list in Document of perf-kvm Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] perf kvm: Add more detail about buildid-list in man page tip-bot for Dongsheng Yang
2013-12-04 22:56 ` [PATCH 5/5] perf tool: Fix a type of '=' in Document of perf-kvm Dongsheng Yang
2013-12-10 9:16 ` [tip:perf/core] perf kvm: Fix spurious '=' use in man page tip-bot for Dongsheng Yang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox