From: Gleb Natapov <gleb@redhat.com>
To: David Ahern <dsahern@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Avi Kivity <avi@redhat.com>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: perf with precise attribute kills all KVM based VMs
Date: Wed, 11 Jul 2012 10:10:06 +0300 [thread overview]
Message-ID: <20120711071006.GF23898@redhat.com> (raw)
In-Reply-To: <4FFCBD00.1030109@gmail.com>
On Tue, Jul 10, 2012 at 05:38:40PM -0600, David Ahern wrote:
> On 7/9/12 8:59 AM, Peter Zijlstra wrote:
> >On Mon, 2012-07-09 at 17:51 +0300, Avi Kivity wrote:
> >>On 07/09/2012 05:49 PM, Peter Zijlstra wrote:
> >>>On Mon, 2012-07-09 at 08:47 -0600, David Ahern wrote:
> >>>>
> >>>>I found this testing changes to perf-kvm, but found the problem extends
> >>>>to just perf-record. With perf-record exclude_guest defaults to 1. See
> >>>>tools/perf/util/util.c, event_attr_init().
> >>>
> >>>You lost me there.. so perf-record defaults to exclude_guest=1 (which
> >>>would make the proposed patch I just send actually possible), but its
> >>>still going *bang* ?
> >>
> >>It's possible that the DS writes overshoot the MSR... or that there's a
> >>bug somewhere.
> >
> >OK, so the first thing to stare at is in what order the MSRs are
> >touched, I think you first need to stop the counter, then clear the PEBS
> >bits, then clear the DS_AREA one.
> >
>
> Any updates on the options for this or is there still squinting
> going on with MSR orders?
>
Looks like Avi is right about the overshoot. Can you test something like this?
diff --git a/arch/x86/kernel/cpu/perf_event_intel.c b/arch/x86/kernel/cpu/perf_event_intel.c
index 166546e..5fb371a 100644
--- a/arch/x86/kernel/cpu/perf_event_intel.c
+++ b/arch/x86/kernel/cpu/perf_event_intel.c
@@ -1374,8 +1374,11 @@ static struct perf_guest_switch_msr *intel_guest_get_msrs(int *nr)
arr[0].msr = MSR_CORE_PERF_GLOBAL_CTRL;
arr[0].host = x86_pmu.intel_ctrl & ~cpuc->intel_ctrl_guest_mask;
arr[0].guest = x86_pmu.intel_ctrl & ~cpuc->intel_ctrl_host_mask;
+ arr[1].msr = MSR_IA32_PEBS_ENABLE;
+ arr[1].host = cpuc->pebs_enabled;
+ arr[1].guest = 0;
+ *nr = 2;
- *nr = 1;
return arr;
}
> I guess it's a good thing Ingo's request for :pp to be the default
> was not implemented:
> https://lkml.org/lkml/2012/5/14/26
>
> David
--
Gleb.
next prev parent reply other threads:[~2012-07-11 7:10 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-09 14:12 perf with precise attribute kills all KVM based VMs David Ahern
2012-07-09 14:19 ` Gleb Natapov
2012-07-09 14:24 ` Peter Zijlstra
2012-07-09 14:36 ` Gleb Natapov
2012-07-09 14:39 ` Avi Kivity
2012-07-09 14:47 ` David Ahern
2012-07-09 14:49 ` Peter Zijlstra
2012-07-09 14:51 ` Avi Kivity
2012-07-09 14:54 ` Gleb Natapov
2012-07-09 14:57 ` Gleb Natapov
2012-07-09 14:59 ` Peter Zijlstra
2012-07-10 23:38 ` David Ahern
2012-07-11 7:10 ` Gleb Natapov [this message]
2012-07-11 9:49 ` Peter Zijlstra
2012-07-11 9:53 ` Gleb Natapov
2012-07-11 13:34 ` David Ahern
2012-07-12 4:11 ` David Ahern
2012-07-12 4:29 ` Gleb Natapov
2012-07-12 15:20 ` David Ahern
2012-07-12 16:06 ` Gleb Natapov
2012-07-12 16:13 ` Gleb Natapov
2012-07-12 16:58 ` Peter Zijlstra
2012-07-16 1:51 ` David Ahern
2012-07-15 8:07 ` Avi Kivity
2012-07-15 13:00 ` David Ahern
2012-07-15 13:03 ` Avi Kivity
2012-07-16 1:52 ` David Ahern
2012-07-16 2:19 ` David Ahern
2012-07-20 23:34 ` David Ahern
2012-07-22 9:52 ` Avi Kivity
2012-07-09 14:52 ` David Ahern
2012-07-09 14:58 ` David Ahern
2012-07-09 15:18 ` David Ahern
2012-07-09 14:47 ` Peter Zijlstra
2012-07-20 23:35 ` David Ahern
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=20120711071006.GF23898@redhat.com \
--to=gleb@redhat.com \
--cc=avi@redhat.com \
--cc=dsahern@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
/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.