Single PV startup vs multiple PV startup

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

 



Jeremy Fitzhardinge wrote:
> Single entry pros:
>
>     * simpler control flow?
>   

Simpler to maintain the code.  Maintaining multiple intertwined entry 
points is a mess.  It used to be done for Visual workstation, and the 
code got merged back together.  Here's a pretty easy thing to do:

ENTRY(startup_32)

#ifdef CONFIG_PARAVIRT
        movl %cs, %eax
        testl $0x3, %eax
        jnz pv_startup_32
#endif

Now you don't need any special magic at all to register an alternate 
entry point.

> cons:
>
>     * requires "hypervisor sniffing" to work out what hypervisor we're under
>           o mandates setting %ebx to a magic constant?
>     * not possible to have hypervisor-specific setup before setting up
>       stacks, making calls, etc
>
>
> Where do the ebx constants come from anyway?  If they're provided by the 
> hypervisor itself, it means we need to have a registry of who's using 
> what number, right?  We'd require them to all be unique (since 
> collisions would be disastrous), and also they need to be densely 
> allocated (single we're using them as an array index).
>   

Why is registering these constants hard?  I prefer the symmetry of 
having all vendors use the same entry method rather than encouraging 
ad-hoc hacks.

Zach


[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