All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Avi Kivity <avi@redhat.com>
Cc: Glauber Costa <glommer@redhat.com>,
	Ulrich Obergfell <uobergfe@redhat.com>,
	kvm@vger.kernel.org, zamsden@redhat.com, mtosatti@redhat.com
Subject: Re: [RFC 0/4] KVM in-kernel PM Timer implementation
Date: Tue, 14 Dec 2010 09:32:26 -0600	[thread overview]
Message-ID: <4D078E0A.9@codemonkey.ws> (raw)
In-Reply-To: <4D0775F1.7000201@redhat.com>

On 12/14/2010 07:49 AM, Avi Kivity wrote:
> On 12/14/2010 03:40 PM, Glauber Costa wrote:
>> >
>> >  What is the motivation for this?  Are there any important guests that
>> >  use the pmtimer?
>> Avi,
>>
>> All older RHEL and Windows, for example, would benefit for this.
>
> They only benefit from it because we don't provide HPET.  If we did, 
> the guests would use HPET in preference to pmtimer, since HPET is so 
> much better than pmtimer (yet still sucks in an absolute sense).
>
>> >  If anything I'd expect hpet or the Microsoft synthetic timers to be a
>> >  lot more important.
>>
>> True. But also a lot more work.
>> Implementing just the pm timer counter - not the whole of it - in
>> kernel, gives us a lot of gain with not very much effort. Patch is
>> pretty simple, as you can see, and most of it is even code to turn it
>> on/off, etc.
>>
>
> Partial emulation is not something I like since it causes a fuzzy 
> kernel/user boundary.  In this case, transitioning to userspace when 
> interrupts are enabled doesn't look so hot.  Are you sure all guests 
> that benefit from this don't enable the pmtimer interrupt?  What about 
> the transition?  Will we have a time discontinuity when that happens?
>
> What I'd really like to see is this stuff implemented in bytecode, 
> unfortunately that's a lot of work which will be very hard to upstream.

Fortunately, we have a very good bytecode interpreter that's accelerated 
in the kernel called KVM ;-)

Why not have the equivalent of a paravirtual SMM mode where we can 
reflect IO exits back to the guest in a well defined way?  It could then 
implement PM timer in terms of HPET or something like that.

We already have a virtual address space that works for most guests 
thanks to the TPR optimization.

Regards,

Anthony Liguori



  parent reply	other threads:[~2010-12-14 15:32 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <344060531.680691292328457867.JavaMail.root@zmail07.collab.prod.int.phx2.redhat.com>
2010-12-14 12:09 ` [RFC 0/4] KVM in-kernel PM Timer implementation Ulrich Obergfell
2010-12-14 13:34   ` Avi Kivity
2010-12-14 13:40     ` Glauber Costa
2010-12-14 13:49       ` Avi Kivity
2010-12-14 13:52         ` Gleb Natapov
2010-12-14 15:32         ` Anthony Liguori [this message]
2010-12-14 15:38           ` Avi Kivity
2010-12-14 16:04             ` Anthony Liguori
2010-12-15  9:33               ` Avi Kivity
2010-12-14 15:29   ` Anthony Liguori
2010-12-14 18:00     ` David S. Ahern
2010-12-14 19:49       ` Anthony Liguori
2010-12-14 19:54         ` David S. Ahern
2010-12-14 21:46           ` Anthony Liguori
2010-12-14 23:59             ` David S. Ahern
     [not found] <953393305.700721292337871455.JavaMail.root@zmail07.collab.prod.int.phx2.redhat.com>
2010-12-14 14:44 ` Ulrich Obergfell
2010-12-14 15:12   ` Avi Kivity
     [not found] <1956121317.795411292413874075.JavaMail.root@zmail07.collab.prod.int.phx2.redhat.com>
2010-12-15 11:53 ` Ulrich Obergfell
2012-02-21 18:10   ` Peter Lieven

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=4D078E0A.9@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=avi@redhat.com \
    --cc=glommer@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=mtosatti@redhat.com \
    --cc=uobergfe@redhat.com \
    --cc=zamsden@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.