Re: [PATCH] perf parse-events: Set exclude_guest for user-space counting

From: Jin, Yao
Date: Thu Aug 13 2020 - 01:10:06 EST


Hi Arnaldo,

On 8/12/2020 8:55 PM, Arnaldo Carvalho de Melo wrote:
Em Wed, Aug 12, 2020 at 09:15:04AM -0300, Arnaldo Carvalho de Melo escreveu:
Em Wed, Aug 12, 2020 at 02:59:53PM +0800, Jin Yao escreveu:
Currently if we run 'perf record -e cycles:u', exclude_guest is 0.

But it doesn't make sense that we request for user-space counting
but we also get the guest report.

To keep perf semantics consistent and clear, this patch sets
exclude_guest for user-space counting.

Applied, and also added this, that you should consider doing in the
future (modulo the "Committer testing:" header :) ):

Committer testing:

Before:

# perf record -e cycles:u
^C[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 1.231 MB perf.data (91 samples) ]
#
# perf evlist -v
cycles:u: size: 120, { sample_period, sample_freq }: 4000, sample_type: IP|TID|TIME|ID|CPU|PERIOD, read_format: ID, disabled: 1, inherit: 1, exclude_kernel: 1, exclude_hv: 1, freq: 1, sample_id_all: 1
<SNIP>
#

After:

# perf record -e cycles:u
^C[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 1.263 MB perf.data (403 samples) ]
#
# perf evlist -v
cycles:u: size: 120, { sample_period, sample_freq }: 4000, sample_type: IP|TID|TIME|ID|CPU|PERIOD, read_format: ID, disabled: 1, inherit: 1, exclude_kernel: 1, exclude_hv: 1, freq: 1, sample_id_all: 1, exclude_guest: 1
#

Also, please run 'perf test', as this will require changes to some
expected perf_event_attr setups:

[root@quaco ~]# perf test "event definition"
6: Parse event definition strings : FAILED!
[root@quaco ~]#

- Arnaldo


Sorry for the perf test failure! I will post v2 to fix this issue.

Thanks
Jin Yao