28 May, 2010

1 commit

  • The MINIX filesystem driver used a constant number of indirect block
    pointers in an indirect block. This worked only for filesystems with 1kb
    block, while the MINIX default block size is now 4kb. As a consequence,
    large files were read incorrectly on such filesystems and writing a
    large file would cause the filesystem to become corrupted. This patch
    computes the number of indirect block pointers based on the block size,
    making the driver work for each block size.

    I would like to thank Feiran Zheng ('Fam') for pointing out the cause
    of the corruption.

    Signed-off-by: Erik van der Kouwe
    Signed-off-by: Al Viro

    Erik van der Kouwe
     

17 Oct, 2007

1 commit

  • This attempts to address CVE-2006-6058
    http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-6058

    first reported at http://projects.info-pull.com/mokb/MOKB-17-11-2006.html

    Essentially a corrupted minix dir inode reporting a very large
    i_size will loop for a very long time in minix_readdir, minix_find_entry,
    etc, because on EIO they just move on to try the next page. This is
    under the BKL, printk-storming as well. This can lock up the machine
    for a very long time. Simply ratelimiting the printks gets things back
    under control. Make the message a bit more informative while we're here.

    Signed-off-by: Eric Sandeen
    Cc: Bodo Eggert
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eric Sandeen
     

13 Feb, 2007

1 commit

  • This morning I needed to read a Minix V3 filesystem, but unfortunately my
    2.6.19 did not support that, and neither did the downloaded 2.6.20rc4.

    Fortunately, google told me that Daniel Aragones had already done the work,
    patch found at http://www.terra.es/personal2/danarag/

    Unfortunaly, looking at the patch was painful to my eyes, so I polished it
    a bit before applying. The resulting kernel boots, and reads the
    filesystem it needed to read.

    Signed-off-by: Daniel Aragones
    Signed-off-by: Andries Brouwer
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andries Brouwer
     

26 Mar, 2006

1 commit

  • Believe it or not, but in fs/minix/*, the oldest filesystem in the kernel,
    something still can be fixed:

    printk("new_inode: bit already set");

    "\n" is missing!

    While at it, I also removed periods from the end of error messages and made
    capitalization uniform. Also s/i-node/inode/, s/printk (/printk(/

    Signed-ff-by: Denis Vlasenko

    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Denis Vlasenko
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds