Re: [RFC 0/4] KVM in-kernel PM Timer implementation

Avi Kivity
2010-12-14T15:12:09Z

On 12/14/2010 04:44 PM, Ulrich Obergfell wrote:
> >
> > 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?
>
> Avi,
>
> the idea is to use the '-kvm-pmtmr' option (in code part 4) only
> with guests that do not enable the 'timer carry interrupt'. Guests
> that need to enable the 'timer carry interrupt' should rather use
> the PM Timer emulation in qemu userspace (i.e. they should not be
> started with this option). If a guest is accidentally started with
> this option, the in-kernel PM Timer (in code part 1) detects if
> the guest attempts to enable the 'timer carry interrupt' and falls
> back to PM Timer emulation in qemu userspace (in-kernel PM Timer
> disables itself automatically). So, this is not a combination of
> in-kernel PM Timer register emulation and qemu userspace PM Timer
> interrupt emulation.
>

We really try to avoid guest specific parameters. Having to decide if
the guest has virtio is bad enough, but going into low level details
like that is really bad. The host admin might not even know what
operating systems its guests run.

A guest might even dual boot two different operating systems.

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