Can someone please explain the following stance: root=<...> Omit or specify as "/dev/ram0". For other values be sure to know what you’re doing. Ok, so using /dev/ram0 has been wrong ever since 2.6 went mainline. You *DO NOT* want this as a ramdisk, you want this as a ramfs/tmpfs. We are building cpio-archives to be used as initramfs here, not the old disk-images to be used as initrd. Also the init scripts in the cpio-archive nowdays just uses root instead of real_root unless both is set. So why, oh wy do we still have this, which just makes our documentations unnecessary complicated (i.e. documenting two usages when one is enough in the gentoo handbook and so on) and probably is what makes madness like one of the latest grub patch[1] surface. [1] http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-boot/grub/files/grub-2.00-10_linux-genkernel.patch?revision=1.1&view=markup
Created attachment 308335 [details, diff] Support the use of init= instead of real_init= So this duplicate the handling of root/real_root for init/real_init. Tested, please give feedback.
Created attachment 308337 [details, diff] Updated documentation So here is the thing: * Our code cannot create initrd/ramdisks anymore. * We do NOT need RAM disk support. My kernel uses the initramfs fine without it * setting root=/dev/ram0 is infact an old 2.4 ramdisk thing, and we actually actively ignores it. So why did we tell people to set it and not to change it unless "they knew what they were doing"? * in fact init= did *not* work with initramfs for us until my previous patch, it was just ignored. The new parameter for that is rdinit= (handled by the kernel). Since the initramfs we creates nowdays does not clobber up root=/init= we should reuse them and deprecated real_* for at least the following reason: It HUGELY simplifies support and documentation when we do not need to deviate from the kernel documentation on kernel parameters, and we do not need special clauses in the handbook on how to specify "root" and "init" just because we did once support the 2.4 kernel.
I cleaned up my messy branches and pushed a new branch "xake" only containing these two patches. The first patch I confide in so much I can actually push it myself, but I want review on the wording in patch two. Please review and pull.
This looks good to me. However, I recall robbat2 insisted in the past that there could be issues on some configurations if root=/dev/ram0 was not set, which is why we have the current situation. I will wait for robbat2 to comment before this is committed.
(In reply to comment #4) > This looks good to me. However, I recall robbat2 insisted in the past that > there could be issues on some configurations if root=/dev/ram0 was not set, > which is why we have the current situation. I will wait for robbat2 to > comment before this is committed. @robbat2 Still true? The thing is, no normal system needs these configuration options when using genkernel. So which systems does, so we maybe can specify that?
xake: +1 on merging 232c865cbff2ffbe41f3ba98c142959e5e61414a and 2293c0eff00260635f9d19035d1b397c7deb3853 to main. (also, you should pull from master into your xake branch more often).
Merged for xake per IRC discussion.