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

Generic IDE support: initrd boot module parameters



I should have looked at the ide/pci/generic.c code in 2.6.19 instead of
focusing on the new ata/ stuff and how it is implemented. This is old
news but I just noticed it. 2.6.19 includes the same patch:

http://www.kernel.org/pub/linux/kernel/v2.6/testing/ChangeLog-2.6.19-rc1
commit a4bea10eca68152e84ffc4eaeb9d20ec2ac34664
Author: Patrick Jefferson <henj@hp.com>
Date:   Tue Oct 3 01:14:34 2006 -0700

    [PATCH] Allow ide_generic_all to be used modular and built in
        
	    Allow ide/pci/generic to claim chipsets as a a module or
	    when built-in.  It requires using "all_generic_ide" as a 
	    boot option.  
	    Signed-off-by: Patrick Jefferson <henj@hp.com>
	    Acked-by: Alan Cox <alan@redhat.com>
	    Closes-Bug: 7017
	    Signed-off-by: Andrew Morton <akpm@osdl.org>
	    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
	    
Even with this change, I believe that there is still a chicken in the
egg problem with the debian-installer using debian-kernel images.
Perhaps I am seeing this incorrectly. There seems to be no facility
in the initrd made by mkinitramfs to pass command line module
parameters to modprobe. The initrd loads a snapshot of modules and
module settings from when it was made.

My naive work around is to have 
scripts/functions:load_modules() first parse /proc/cmdline for all
/[[:alnum:]]+\.[^ ]+/ instances, turning them into proper modprobe
options lines and writing them to the temporary initrd /etc/modprobe.d,
maybe as 'boot-options'. Maybe it should also go to the real file, or
modprobe should just parse /proc/cmdline.

I think that parsing the kernel command line options and passing them to
initrd modules would be very useful. It would be nice if setting module
options on the kernel command line would "just work"(tm) no matter how
the module is compiled or when it is loaded.

I'm not going to do too much on this idea yet. I suspect that it has
already been done somewhere, or that the reason for not doing it has
already been discussed and I just haven't found it yet.

-- 
Jacob			



Reply to: