Re: selecting initramfs support without initrd?

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

 



On Tuesday 24 June 2008 17:11:01 Robert P. J. Day wrote:
>   i'm not sure if this is the proper forum for this, but while
> perusing the early boot code, i noticed that selecting the config
> variable BLK_DEV_INITRD gives you support for both initramfs, and an
> initrd image.

It gives you support for an _external_ initramfs.  (I.E. the bootloader can 
load an external blob into memory and feed the physical address into the 
kernel via the ramdisk_start=12345 command line option.  If this blob gunzips 
to a cpio image, it's extracted into rootfs.  If it gunzips to a recognized 
filesystem type, it's used as an initrd.)

The one built into the kernel is always used and can't be disabled, that I am 
aware of.  If you have files in the static cpio archive and files in an 
internally supplied cpio archive, the file in the external one replaces the 
corresponding file in the internal one.

>   based on a quick inspection of the source under init/, it would seem
> that you could whack out sizable chunks of code if you had no need for
> initrd, but i could be wrong.

If you disable BLK_DEV_INITRD you'll still have a cpio image built into your 
kernel:

make allnoconfig
make -j 3

It's possible that inclusion of the external image loading logic should be 
based on a symbol other than BLK_DEV_INITRD, since initramfs can use that 
logic when you never use a ram disk block device.  It's a question of 
untangling stuff and figuring out how much config granularity you want...

Rob
-- 
"One of my most productive days was throwing away 1000 lines of code."
  - Ken Thompson.
--
To unsubscribe from this list: send the line "unsubscribe linux-embedded" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Gstreamer Embedded]     [Linux MMC Devel]     [U-Boot V2]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux ARM Kernel]     [Linux OMAP]     [Linux SCSI]

  Powered by Linux