On Mon, 2006-07-31 at 01:50 -0700, Zachary Amsden wrote: > Rusty Russell wrote: > >> fixmap-bootparam.patch > > > > While this would justify the above patch, it is IMHO, the wrong approach > > for adding a paravirt module later: a module shouldn't fail to load > > because you forgot a boot cmdline param. I really think a #ifdef > > CONFIG_XXX_MODULE would be clearer. > > We can't rely on a compile time kernel option - we really must have a > boot parameter. This is not the wrong approach. If you forgot to add > the boot parameter, so be it. You reboot and the paravirt module can > load. The whole approach only makes sense if you can fully virtualize > the kernel boot, so this is a completely plausible scenario. The approach also makes sense for booting a kernel on native hardware, then inserting a hypervisor later (ie. turning it into dom0). I'll not be relying on an obscure cmdline boot option for that... > What we don't want to do is force Linux to have to move the fixmap at > runtime. I think that could be very, very messy. Course, it may be > possible (with a dynamic fixmap, it moves into that realm). But to > completely remove the boot parameter without the ability to change the > fixmap at runtime makes dynamic loading of a hypervisor module impossible. No, because if they compiled the kernel with (say) CONFIG_VMI=m, the fixmap would always be low even for "native". No cmdline option necessary... > Besides, it is useful for testing the performance impact of reducing > lowmem - which I don't think has been adequately benchmarked to this > day, and is still an area of investigation. Sure, but that hardly has to go into the mainline... This is a change only useful for paravirtualization, yet it's not #ifdef CONFIG_PARAVIRT'ed. I feel it's a little dishonest (and mission creepish) to push this as some kind of general change, when a three-line patch will do what we need for now... Rusty. -- Help! Save Australia from the worst of the DMCA: http://linux.org.au/law