On Tue, 2011-05-10 at 17:08 +0200, Roedel, Joerg wrote:
> On Tue, May 10, 2011 at 10:50:08AM -0400, Peter Zijlstra wrote:
> > On Tue, 2011-05-10 at 16:35 +0200, Joerg Roedel wrote:
> > > @@ -740,6 +740,12 @@ parse_event_modifier(const char **strp, struct 
> > > perf_event_attr *attr)
> > >                         if (!exclude)
> > >                                 exclude = eu = ek = eh = 1;
> > >                         eh = 0;
> > > +               } else if (*str == 'G') {
> > > +                       eg   = 0;
> > > +                       ehst = 1;
> > > +               } else if (*str == 'H') {
> > > +                       eg   = 1;
> > > +                       ehst = 0; 
> > 
> > This doesn't match the existing exclude logic, also eH and eG come to
> > mind.
> 
> OK, eH and eG seems like a better choice. Regarding the logic I
> explictly decided to do it this way. The reason is that guest/host
> counting is orthogonal to user/kernel/hv counting. You can decide to
> only count guest-kernel for example. And if a user just specifies
> -e cycles:G this would automatically exlucde user and kernel counting.
> This didn't make sense to me so I decided to keep the logic seperate for
> guest/host exclusions.

OK, so the changelog lacked that bit of information ;-)

How about you do something like:



+               } else if (*str == 'G') {
+                       if (!excl_GH)
+                               excl_GH = eH = eG = 1;
+                       eG   = 0;
+               } else if (*str == 'H') {
+                       if (!excl_GH)
+                               excl_GH = eH = eG = 1;
+                       eH   = 0;

Which mirrors the existing logic but keeps it orthogonal?


Hmm,. does this nicely integrate with exclude_hv? that seems to want to
be grouped with G/H.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to