The new kernels (18.104.22.168-1 and 2.6.17ck) fail with udev module loading for me so I decided to build my own kernel instead of figuring out what the problem was.
I downloaded a vanilla kernel from kernel.org (22.214.171.124). I built the kernel without a ramfs, without initrd and without mkinitcpio. I also have very few modules (ipw2100, some firewire and usb stuff). When I boot with the kernel, I get a kernel panic, VFS: can't mount root filesystem on blah blah...
So, I was wondering. Is there something special I need to do (arch patches?) in order to make this work or did I just screw up somewhere. Would enabling ramfs and initrd likely fix this problem? I am fairly certain I have everything needed to boot compiled into the kernel, and not as a module.
Well, if you configure and compile your own kernel you definitely not need any initrd at all and your life grows happier. However, double check that the support for your hard disk controllers and for your root filesystem are compiled INTO the kernel.
Eventually, post you kernel config in pastebin and post the link here (and give us some details about your hd and filesystems).
Double check also your bootloader config.
It may happen sometimes that vanilla needs to be patched in order to work with the most recent udev or other core apps. However, this seems not to be the case now, since arch kernel (as you can see throu the PKGBUILD in abs) is lightly patched, with patches not affecting vital subsystems. Anyway, you could try to compile your kernel through abs using that PKGBUILD as a reference. Also in this case, if you configuration is proper, it is perfectly safe to remove all the initrd-initramfs-initcpio stuff.
Mortuus in anima, curam gero cutis
I copied over the config from an old kernel of mine and did 'make oldconfig'. Some things did not translate well, though. I grep'd the .config for '=m' to find modules and it turns out I had some IDE stuff in there as modules. I fixed that, and now it works very well.
Thanks for the help!
Just check your option..You should make support of your root fs with * not with <M> and you make the needed modules with * ( such as fs module..ide controller module.. etc ) for this you should know very good your hardware.