[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] help to understand is_running _on_xen ?



> >    I don't  understand why we check this condition
> > is_running_on_xen  ?In all drivers(front & back) code we are
> > checking this condition ?what is this function stands for ?
> > what it does ?
>
> If you search for "is_running_on_xen" in the Linux tree, you'll find
> that the x86 definition of this is "1" - so any test for this,
> currently, means that it's "true". IA64 is different, at least in the
> exact implementation.
>
> I can't explain this in any othe way than that the plan is to allow for
> drivers to check if they are running on a native platform or running on
> top of Xen, and make decisions (such as "not attempt to make
> hypercalls") based on which case it is - so if we're not running on Xen,
> don't make hypercalls to Xen, because it wont work!

IA64, at least at one stage (not sure of the current status, since there have 
been quite a few changes since I read about this), supported "transparent 
paravirtualisation" whereby the same kernel could run with minimal 
performance loss both on the native hardware and paravirtualised.

The x86 paravirt_ops code for Linux is designed to allow this mode of 
operation for x86_32 systems also (and presumably, eventually it'll work for 
x86_64).

It doesn't make any sense to enable the Xen-aware drivers when not running on 
Xen - they won't work as the platform features they require (hypercalls etc) 
are not present.

is_running_on_xen() may be defined to 1 (as in the linux-sparse tree supplied 
with Xen) if the kernel is only ever intended to run paravirtualised, or if 
the kernel is capable of transparent paravirtualisation it may call to a 
function which checks for the presence of Xen and returns nonzero only if Xen 
is available.

HTH,
Cheers,
Mark

-- 
Dave: Just a question. What use is a unicyle with no seat?  And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.