From: Gleb Natapov <gleb@redhat.com>
To: David Ahern <dsahern@gmail.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Ingo Molnar <mingo@kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Arnaldo Carvalho de Melo <acme@infradead.org>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Thomas Gleixner <tglx@linutronix.de>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [GIT PULL] perf changes for v3.8
Date: Sun, 23 Dec 2012 11:23:24 +0200 [thread overview]
Message-ID: <20121223092324.GN17584@redhat.com> (raw)
In-Reply-To: <50D60A5B.1020700@gmail.com>
On Sat, Dec 22, 2012 at 12:30:35PM -0700, David Ahern wrote:
> On 12/17/12 3:20 AM, Gleb Natapov wrote:
> >Does the regression happen because of commit 20b279ddb38c. If it does I
> >think it is safe to revert it. KVM disables PEBS during guest entry now, so
> >VMs shouldn't be blowing up (they do not in my testing) and if they still
> >do we can disable the counter that has PEBS enabled on a guest entry too.
> >Yes, if user runs "perf record -e cycles:ppG" he will not know that
> >kernel ignored :pp modifier (with 20b279ddb38c he will get an error), but
> >at least old binaries will continue working and new binaries can do the
> >checking in userspace.
> >
>
> Your patch alone was not enough. Start here:
> https://lkml.org/lkml/2012/7/12/3
>
I cannot reproduce this failure. I reverted 20b279ddb38c and ran "perf
record -e cycles:ppG" while guest was running. Admittedly I ran the test
for a short time, but without disabling PEBS during the guest entry this
was enough to crash a guest.
The difference between "perf record -e cycles:ppG" and "perf record -e
cycles:ppH" from KVM point of view is that for ppH PMU counter and PEBS
will be disabled during a guest entry for ppG only PEBS will be disabled,
so may be my testing is not enough and if counter remains enabled PEBS
write can eventually overshoot guest entry. In this case we can treat
ppG and ppH the same during guest entry and disable both counter and PEBS.
> And from your response:
> https://lkml.org/lkml/2012/7/12/337
>
> "Do not run perf kvm. It does not set exclude_guest and :p and :pp
> is not compatible with guest profiling and should be disallowed.
> Again Peter's patch takes care of this."
>
I stand by this :) It should be disallowed as in "user should get
a warning that he does something wrong and hist settings will be
ignored". Unfortunately the way it was implemented breaks old perf
binaries and keeping them running is more important than warning users
about something that never worked anyway. New perf binary can do the
check in userspace. Kernel should still disallow configuration that may
crash a guest, but not in a way that breaks the userspace that does not
set exclude_guest. What about forcing exclude_guest on an event that
has precise flag set without reporting error to userspace?
> 20b279ddb38c is Peter's patch -- kernel side enforcement that
> exclude_guest needs to be set when using precise mode.
>
> David
--
Gleb.
next prev parent reply other threads:[~2012-12-23 9:23 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-11 9:09 [GIT PULL] perf changes for v3.8 Ingo Molnar
2012-12-13 2:53 ` Linus Torvalds
2012-12-13 3:02 ` David Ahern
2012-12-13 3:09 ` Linus Torvalds
2012-12-13 3:16 ` David Ahern
2012-12-13 3:25 ` David Ahern
2012-12-13 3:34 ` Linus Torvalds
2012-12-13 3:43 ` David Ahern
2012-12-13 3:51 ` Linus Torvalds
2012-12-13 4:31 ` David Ahern
2012-12-13 4:46 ` Linus Torvalds
2012-12-13 7:27 ` Ingo Molnar
2012-12-13 7:30 ` Ingo Molnar
2012-12-13 14:30 ` David Ahern
2012-12-13 14:38 ` David Ahern
2012-12-13 16:03 ` Linus Torvalds
2012-12-13 16:24 ` David Ahern
2012-12-13 16:33 ` Linus Torvalds
2012-12-13 16:59 ` Ingo Molnar
2012-12-13 17:10 ` Linus Torvalds
2012-12-13 17:31 ` Ingo Molnar
2012-12-17 4:43 ` David Ahern
2012-12-22 19:22 ` David Ahern
2012-12-23 0:00 ` Linus Torvalds
2012-12-13 17:02 ` Linus Torvalds
2012-12-13 17:30 ` David Ahern
2012-12-13 17:36 ` Ingo Molnar
2012-12-13 19:12 ` David Ahern
2012-12-13 7:48 ` [PATCH] Revert "perf: Require exclude_guest to use PEBS - kernel side enforcement" Ingo Molnar
[not found] ` <20121217102000.GE11016@redhat.com>
2012-12-22 19:30 ` [GIT PULL] perf changes for v3.8 David Ahern
2012-12-23 9:23 ` Gleb Natapov [this message]
2012-12-23 23:17 ` David Ahern
2012-12-24 10:36 ` Gleb Natapov
2012-12-13 17:04 ` [PATCH] x86: fix perf build with uclibc toolchains Florian Fainelli
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=20121223092324.GN17584@redhat.com \
--to=gleb@redhat.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=dsahern@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.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.