All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>
Subject: Re: [PATCH v2] KVM: VMX: Conditionally reload debug register 6
Date: Tue, 01 Sep 2009 19:21:24 +0300	[thread overview]
Message-ID: <4A9D4A04.8080009@redhat.com> (raw)
In-Reply-To: <4A9D25FD.9070001@siemens.com>

On 09/01/2009 04:47 PM, Jan Kiszka wrote:
>> btw, something else I've considered was not to do any emulation for 'mov
>> dr' but instead load the debug registers and disable the intercept.  So
>> far the only issue I've seen is that we lose support for real mode guest
>> self-debug on intel (pre-unrestricted guest).  What do you think of this?
>>      
> I think you can't have both: optimized dr save/restore on vmentry/exit
> and optimized dr access. If you drop on-demand dr register
> readout/update, you need to deal with this on every vmentry/exit. My
> feeling is that this would be awfully slower, even slower than what we
> currently have without your patches.
>    

I'll clarify:

In the normal case, we'll have #DB and MOV DR intercepted.

On #DB, update vcpu->dr6.
On MOV DR, disable MOV DR interception, enable dr swap, and let the 
guest execute; on the next exit, reenable MOV DR interception and 
disable dr swap.

It's similar to the fpu code where we don't emulate fpu instructions.  
It doesn't really buy us a lot.

-- 
error compiling committee.c: too many arguments to function


  reply	other threads:[~2009-09-01 16:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-01 13:06 [PATCH v2] KVM: VMX: Conditionally reload debug register 6 Avi Kivity
2009-09-01 13:15 ` Jan Kiszka
2009-09-01 13:35   ` Avi Kivity
2009-09-01 13:47     ` Jan Kiszka
2009-09-01 16:21       ` Avi Kivity [this message]
2009-09-02 18:54 ` Marcelo Tosatti
2009-09-03  8:20   ` Jan Kiszka

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=4A9D4A04.8080009@redhat.com \
    --to=avi@redhat.com \
    --cc=jan.kiszka@siemens.com \
    --cc=kvm@vger.kernel.org \
    --cc=mtosatti@redhat.com \
    /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.