lkml.org 
[lkml]   [2012]   [Sep]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 08/11] perf tool: precise mode requires exclude_guest
On 9/6/12 1:02 PM, Robert Richter wrote:
> David,
>
> just found your patch...
>
> On 20.07.12 17:25:53, David Ahern wrote:
>> PEBS cannot be used with guest mode. If user adds :p modifier set
>> exclude_guest as well.
>
>> @@ -653,6 +653,9 @@ int parse_events_modifier(struct list_head *list, char *str)
>> eH = 0;
>> } else if (*str == 'p') {
>> precise++;
>> + /* use of precise requires exclude_guest */
>> + if (!exclude_GH)
>> + eG = 1;
>
> We should only enable exclude_guest if no G/H modifiers are given on
> the command line. If I correctly read the code this is indicated by
> exclude_GH and correctly implemented.

yes.

>
> To summarize how I think it should work:
>
> -e cycles:p ..... Enable exclude_guest bit. If the syscall fails,
> fall back by disabling the guest bit and send
> syscall again

I think the fallback scenarios are getting out of hand -- too many and
too many combinations. For this case (:p only) I proposed setting
exclude_guest. It should not fail if the pebs/ibs is supported. If so,
give the user a helpful message. e.g., https://lkml.org/lkml/2012/7/20/440


>
> -e cycles:pGH ... Do not enable exclude_guest/_host. Do not fall back
> on syscall errors.

In this case give the user a message that the requested combination is
invalid. I have a patch similar to the one above for this.

>
> Same for the case the p modifier is not set.
>
> So we have the following:
>
> G ... set exclude_host bit, clear exclude_guest
> H ... set exclude_guest bit, clear exclude_host
> GH ... clear both exclude_guest/_host
> <no G or H> ... default (set exclude_host bit, clear exclude_guest),
> but fall back on syscall errors to clear both
> exclude_guest/_host

you lost me on the last one. If the user specifies no attributes on the
events then exclude_host/exclude_guest is controlled by the
perf_host/perf_guest variables - see event_attr_init().

>
> The modifier parser should be correctly implemented and should work
> with ibs. Will test this patch.

Thanks!

David


\
 
 \ /
  Last update: 2012-09-06 22:03    [W:0.245 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site