lkml.org 
[lkml]   [2006]   [Dec]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH]: typo in init/initramfs.c
    Date
    Jean-Paul Saman wrote:
    > linux-kernel-owner@vger.kernel.org wrote on 06-12-2006 19:17:27:
    > > Jean-Paul Saman wrote:
    > > > In populate_rootfs() the printk on line 554. It says "Unpacking
    > > > initramfs..", which is confusing because if that line is reached the
    > > > code has already decided that the image is an initrd image.
    > >
    > > Are you sure?
    >
    > Yes.

    Are you really sure?

    > > > The printk is thus
    > > > wrong in stating that it is unpacking an "initramfs". It should says
    > > > "initrd" instead. The attached patch corrects this typo.
    > > >
    > > > Signed-off-by: Jean-Paul Saman <jean-paul.saman@nxp.com>
    > > >
    > > > diff --git a/init/initramfs.c b/init/initramfs.c
    > > > index d28c109..f6020db 100644
    > > > --- a/init/initramfs.c
    > > > +++ b/init/initramfs.c
    > > > @@ -551,7 +551,7 @@ #ifdef CONFIG_BLK_DEV_RAM
    > >
    > > This is where initramfs is discerned from initrd, as both are available.
    > >
    > > > free_initrd();
    > > > }
    > > > #else
    > >
    > > Otherwise it's initramfs only.
    >
    > No otherwise it falls under CONFIG_BLK_DEV_INITRD and it that suggests it
    > must be a initrd, not a initramfs as the original printk() suggests.

    This is what 2.6.19 says:

    =========================
    #ifdef CONFIG_BLK_DEV_INITRD
    if (initrd_start) {
    #ifdef CONFIG_BLK_DEV_RAM
    int fd;
    printk(KERN_INFO "checking if image is initramfs...");
    err = unpack_to_rootfs((char *)initrd_start,
    initrd_end - initrd_start, 1);
    if (!err) {
    printk(" it is\n");
    unpack_to_rootfs((char *)initrd_start,
    initrd_end - initrd_start, 0);
    free_initrd();
    return;
    }
    printk("it isn't (%s); looks like an initrd\n", err);
    fd = sys_open("/initrd.image", O_WRONLY|O_CREAT, 0700);
    if (fd >= 0) {
    sys_write(fd, (char *)initrd_start,
    initrd_end - initrd_start);
    sys_close(fd);
    free_initrd();
    }
    #else // <=== of #ifdef CONFIG_BLK_DEV_RAM
    printk(KERN_INFO "Unpacking initramfs...");
    err = unpack_to_rootfs((char *)initrd_start,
    initrd_end - initrd_start, 0);
    if (err)
    panic(err);
    printk(" done\n");
    free_initrd();
    #endif // <=== of #ifdef CONFIG_BLK_DEV_RAM
    }
    #endif // <=== of #ifdef CONFIG_BLK_DEV_INITRD
    =========================

    Maybe you're getting confused with the dual intitrd naming-convention.
    InitRD used to mean InitRamDisk only, now it means InitRamFS and InitRamDisk
    #ifdef CONFIG_BLK_DEV_RAM, else it means InitRamFS only.

    But still, it's rather refreshing to see you so convinced.


    Thanks!

    --
    Al

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-12-08 15:01    [W:0.033 / U:29.988 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site