<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hello everyone!<br>
    Briefly, I'm creating a dummy distribution which boots from CD
    (using VirtualBox for testing purposes) and lives in RAM. It's a
    very minimalistic kernel which has almost nothing enabled except
    from core facilities, virtual terminal, framebuffer and serial port.<br>
    I'm trying to use the "ultimate boot feature" - the initial RAM
    filesystem. Basically what I have is a plain simple directory with
    the following contents:<br>
    <br>
    <font face="monospace">./proc<br>
      ./sys<br>
      ./dev<br>
      ./etc<br>
      ./etc/inittab<br>
      ./etc/profile<br>
      ./etc/passwd<br>
      ./bin<br>
      ./bin/init<br>
      ./bin/sh<br>
      ./bin/busybox</font><br>
    <br>
    Obviously, at boot /bin/init is executed which is instructed by
    /etc/inittab to simply run a shell and stay happy. <br>
    EVERYTHING WORKS if I enable in the kernel some filesystem (like
    ext2 or squashfs) and create the initrd image of that type and put
    inside the contents of the directory. Isolinux then boots the kernel
    this way:<br>
    <font face="monospace"><br>
      LABEL linux<br>
      &nbsp;&nbsp;&nbsp; SAY Booting linux...<br>
      &nbsp;&nbsp;&nbsp; KERNEL /vmlinuz<br>
      &nbsp;&nbsp;&nbsp; APPEND root=/dev/ram0 initrd=/initrd.gz console=ttyS0,38400
      vga=0x305</font><br>
    <br>
    To make this work, I obviously enabled the "Initial RAM filesystem
    and RAM disk (initramfs/initrd) support" in "General setup" and the
    "RAM block device support" in "Device drivers - block devices"
    options.<br>
    <br>
    Well, ensuring everything works, I tried to switch to initramfs.
    Disabled the "RAM block device support", the ext2 and squashfs
    filesystems and created the init cpio image with a command like
    this:<br>
    <br>
    <font face="monospace">find | cpio -H newc -o | gzip -9 &gt;
      initrd.gz</font><br>
    <br>
    The boot arguments are the same. When I boot, what I have is a
    kernel panic with the following details:<br>
    <br>
    <font face="monospace">List of all partitions:<br>
      No filesystem could mount root, tried: <br>
      Kernel panic - not syncing: VFS: Unable to mount root fs on
      unknown-block(0,0)<br>
    </font><br>
    Here's my config file:
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://pastebin.com/XVd8ZukU">http://pastebin.com/XVd8ZukU</a><br>
    Using linux v3.9.0<br>
    <pre class="moz-signature" cols="72">-- 
Ivan Nikolaev</pre>
  </body>
</html>