Re: + stupid-hack-to-make-mainline-build.patch added to -mm tree

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Jeremy Fitzhardinge
Date: Wednesday, March 7, 2007 - 2:07 pm

Thomas Gleixner wrote:

It's a different but related problem domain.  It's also an increasingly
common execution environment for a kernel to find itself in.  Dealing
with proper paravirtualized timer devices is a big improvement over
trying to reliably deal with fully virtualized hardware timers, which
simply can't make the same guarantees that real hardware can make - such
as "you will definitely get N ns of CPU time between doing the
delta->absolute computation and programming the match register".


I wouldn't put it that way.  We've been getting a lot of pressure to
keep the pv_ops interface as small as possible.  Reusing existing kernel
interfaces rather than making up new ones is a good way to do that.  The
clock infrastructure certainly cleans things up; earlier Xen patches
made a complete copy of the old kernel/time.c and hacked it around,
which isn't what anyone wants to do.


Lots of people want to run Linux in virtual machines.  If we can make
sane kernel changes to help those users, then that is of use an benefit
to the kernel.


Not really.  Xen and VMI interfaces both use absolute monotonic time for
timeouts, which is certainly a common case for such interfaces
(pthread_cond_timedwait, for example).  Converting delta to absolute is
clearly simple, but it does introduce an added bit of non-determinism if
your CPU can be preempted from outside at any time.  I presume SMM or
similar interrupts can cause the same problem on real hardware.

I guess the worst case for real hardware is an absolute-time match
register which only compares for match==now rather than match<=now,
since you could completely lose the time event if you miss the deadline.


The clocksource needed the shift for ntp warping.  Does the clockevent
need a shift at all?  Could I just set mult/shift to 1/0?


The point is to use the tsc to avoid making any hypercalls, so dealing
with the tsc->ns conversion has to happen on the guest side somehow.


That would certainly be ideal.  We'll look at the xen, vmi, lguest and
kvm paravirtualized time models and see how much they really have in
common.  I'm a bit curious about how vmi's time events make their way
back into the system.

    J
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Tue Mar 6, 5:24 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Tue Mar 6, 10:10 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 10:41 am)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 11:28 am)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 11:35 am)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 12:05 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 1:11 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 2:07 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 2:08 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 3:05 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 4:33 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 4:36 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 5:19 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 5:38 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Wed Mar 7, 6:23 pm)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Thu Mar 8, 1:41 am)
Re: hardwired VMI crap , Ingo Molnar, (Thu Mar 8, 2:10 am)
Re: hardwired VMI crap, Zachary Amsden, (Thu Mar 8, 3:06 am)
Re: hardwired VMI crap, Thomas Gleixner, (Thu Mar 8, 4:09 am)
Re: hardwired VMI crap, Chris Wright, (Thu Mar 8, 11:35 am)
Re: + stupid-hack-to-make-mainline-build.patch added to -m ..., Jeremy Fitzhardinge, (Thu Mar 8, 12:42 pm)
Re: hardwired VMI crap, Zachary Amsden, (Thu Mar 8, 1:46 pm)
Re: hardwired VMI crap, Ingo Molnar, (Thu Mar 8, 2:13 pm)
Re: hardwired VMI crap, Andi Kleen, (Thu Mar 8, 2:39 pm)
Re: hardwired VMI crap, Zachary Amsden, (Thu Mar 8, 3:17 pm)
Re: hardwired VMI crap, Ingo Molnar, (Thu Mar 8, 3:33 pm)
Re: hardwired VMI crap, Ingo Molnar, (Thu Mar 8, 3:42 pm)
Re: hardwired VMI crap, Zachary Amsden, (Thu Mar 8, 3:58 pm)
Re: hardwired VMI crap, Zachary Amsden, (Thu Mar 8, 4:39 pm)