RE: PROBLEM: kernel mount of initrd fails unless mke2fs uses 1024 byt e blocks

From: Andries.Brouwer@cwi.nl
Date: Fri Apr 12 2002 - 16:17:19 EST


        The kernel does set_blocksize() to change the blocksize of your
        device. This set_blocksize() throws away all buffers with the
        now incorrect size. But your device is a ramdisk, and throwing
        out these buffers kills all your data.

    Andries,

    Thanks for the update. So, what do I do now?
    Wait for a fix for 2.2? Send my problem report to someone else?

First you check whether my analysis is correct:
check that after the failed mount attempt the ramdisk
does not hold any data anymore. (Say with od or so.)

Now we have a known problem. You can avoid meeting it
by only using blocksize 1024. On the kernel side this
of course will have to be fixed some time.
I think Adam Richter once submitted a patch to fix this,
but apparently it was not taken.
For 2.5 I think the aim must be to get rid of set_blocksize()
entirely. I don't know whether 2.2 and 2.4 will be fixed.

Andries
-
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/



This archive was generated by hypermail 2b29 : Mon Apr 15 2002 - 22:00:21 EST