Re: [RFC, PATCH 5/5] Paravirt_ops export.patch

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

 



Zachary Amsden wrote:
> Doing nothing is a BUG, even before this change.  If you can't patch
> in a properly virtualizable substitute for a non-virtualizable
> sequence, the kernel will not work.  The only way for the patching to
> fail is for lack of space or failure to meet clobber constraints, both
> of which would be fatal even without the patching.

Could you give a specific example?  Because the intent is that if you do
nothing (ie, don't apply patching at all), then you'll just end up with
indirect calls which will be a bit expensive but completely functional. 
The idea is that every time there's a paravirt call, it must be
surrounded with push/pops to make the C call compatible with the
callsite's register usage.  Or are you talking about something else?

> 2) You must support dynamic re-linking - the kernel has to boot and
> use builtin native style operations before switching over to the
> virtualized operations.  So you have to have some kind of jettisonable
> early binding support.

I don't think there's any particular reason we can't do this very early,
at the same time we currently populate paravirt_ops.  I think the idea
is that if you do nothing, the calls will all point to the native
versions, so if you do the late-paravirtualization (do you still do
that?) then you'll get native ops initially.

    J
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/virtualization

[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux