From: "Joerg Roedel" <joerg.roedel-5C7GfCeVMHo@public.gmane.org>
To: "Avi Kivity" <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: [PATCH] SVM: forbid guest to execute monitor/mwait
Date: Thu, 22 Mar 2007 11:17:29 +0100 [thread overview]
Message-ID: <20070322101729.GC20139@amd.com> (raw)
In-Reply-To: <46025528.5010707-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
On Thu, Mar 22, 2007 at 12:06:32PM +0200, Avi Kivity wrote:
> Joerg Roedel wrote:
> >On Thu, Mar 22, 2007 at 09:38:12AM +0200, Avi Kivity wrote:
> >
> >>Joerg Roedel wrote:
> >>
> >>>From: Joerg Roedel <joerg.roedel-5C7GfCeVMHo@public.gmane.org>
> >>>
> >>>This patch forbids the guest to execute monitor/mwait instructions on
> >>>SVM. This is necessary because the guest can execute these instructions
> >>>if they are available even if the kvm cpuid doesn't report its
> >>>existence.
> >>>
> >>>
> >>You're intercepting the instructions unconditionally. What about the case where cpuid does
> >>report monitor/mwait support? The guest can legitimately use them then.
> >>
> >
> >I prepared a patch for QEmu to handle this but finally not
> >submitted it because QEmu does not set the Monitor bit anyway. But you
> >are right. It is possible for userspace to set the Montior bit and the
> >guest won't be able to use it.
> >I think an architecture dependent cpuid mask feature in the kernel would
> >solve this problem. I'll prepare a patch for that.
> >
> >
>
> I think I'm misunderstanding something.
>
> Is there actually an AMD cpu that supports monitor/mwait? If not (understandably, having no
Yes, the family 10h processors have support for that.
> hyperthreading), then wouldn't executing monitor or mwait generate #UD anyway? I don't think
> there's need for the cpuid mask as long as setting the monitor bit cannot endanger the
> kernel.
There is no danger for the host kernel but for the guest. If the
userspace sets the monitor bit the guest will receive an #UD when trying
to use it. And we don't want the guest to use it because it is not
virtualized yet.
Joerg
--
Joerg Roedel
Operating System Research Center
AMD Saxony LLC & Co. KG
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
next prev parent reply other threads:[~2007-03-22 10:17 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-21 18:47 [PATCH] SVM: forbid guest to execute monitor/mwait Joerg Roedel
[not found] ` <20070321184700.GA20139-5C7GfCeVMHo@public.gmane.org>
2007-03-22 7:38 ` Avi Kivity
[not found] ` <46023264.4010105-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-22 9:56 ` Joerg Roedel
[not found] ` <20070322095605.GB20139-5C7GfCeVMHo@public.gmane.org>
2007-03-22 10:06 ` Avi Kivity
[not found] ` <46025528.5010707-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-22 10:17 ` Joerg Roedel [this message]
[not found] ` <20070322101729.GC20139-5C7GfCeVMHo@public.gmane.org>
2007-03-22 10:42 ` Avi Kivity
[not found] ` <46025D94.8050606-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-22 11:07 ` Joerg Roedel
[not found] ` <20070322110733.GE20139-5C7GfCeVMHo@public.gmane.org>
2007-03-22 11:40 ` Avi Kivity
[not found] ` <46026B2A.2080501-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-22 11:56 ` Joerg Roedel
[not found] ` <20070322115602.GF20139-5C7GfCeVMHo@public.gmane.org>
2007-03-22 12:01 ` Avi Kivity
[not found] ` <4602700E.1030500-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-22 12:22 ` Joerg Roedel
[not found] ` <20070322122249.GG20139-5C7GfCeVMHo@public.gmane.org>
2007-03-22 12:33 ` Avi Kivity
[not found] ` <460277AE.9040403-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-22 12:46 ` Joerg Roedel
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=20070322101729.GC20139@amd.com \
--to=joerg.roedel-5c7gfcevmho@public.gmane.org \
--cc=avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox