Single PV startup vs multiple PV startup

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

 



On Thu, 2006-07-27 at 14:35 -0700, Jeremy Fitzhardinge wrote:
> Zachary Amsden wrote:
> > 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.
> 
> They're not particularly complex or intertwined.  The startup routine's 
> tasks are very simple:
> 
>    1. get the CPU into a state where we can run C code (ie, basically
>       sane segments & stack)
>    2. copy the right stuff into paravirt_ops
>    3. jump into start_kernel
> 
> One could imagine step 1 might be complex, depending on how the 
> hypervisor starts the world, but it should be fairly self-contained.

As you can see in my patch, I chose an even *simpler* route: (1) then
call paravirts[%ebx]->init(paravirts[%ebx]), which does the rest.  Since
this deliberately only uses %eax and %ebx, I can't see anyone having
issues with this.  When combined with Zach's "share startup_32" patch, I
think it's a no-brainer.

As far as who controls the magic numbers, the answer is simple:
whatever's in the mainline kernel.  I'm happy to maintain them, and push
numbers into mainline even if the implementation isn't.

Managing a dense number space becomes problematic when there are more
than a few dozen, true.  I'll buy you a case of beer if we get there 8)

(BTW, I just wanted to note that I'm delighted to be arguing over
details, so if my arguments are over-enthusiastic at times, that's
probably why.  Now back to our "IS TOO" "IS NOT" debate...)

Cheers!
Rusty.
-- 
Help! Save Australia from the worst of the DMCA: http://linux.org.au/law



[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