Re: Linux 2.6.9-ac5 - more stupid FAT filesystems

From: Vojtech Pavlik
Date: Sat Oct 30 2004 - 06:07:07 EST


On Sat, Oct 30, 2004 at 12:03:08PM +0300, Sami Farin wrote:

> On Fri, Oct 29, 2004 at 03:40:32PM +0100, Alan Cox wrote:
> > This update adds some of the more minor fixes as well as a fix
> > for a nasty __init bug. Nothing terribly pressing for non-S390 users
> > unless they are hitting one of the bugs described or need the new
> > driver bits.
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/alan/linux-2.6/2.6.9/
> >
> > 2.6.9-ac5
> > o Fix oops in and enable IT8212 driver (me)
> > o Minor delkin driver fix (Mark Lord)
> > o Fix NFS mount hangs with long FQDN (Jan Kasprzak)
> > | I've used this version as its clearly correct for 2.6.9
> > | although it might not be the right future solution
> > o Fix overstrict FAT checks stopping reading of (Vojtech Pavlik)
> > some devices like Nokia phones
>
> I guess Canon IXUS 400 is overstupid or something.

No, the patch from me (included in -ac) is completely bogus. The correct
patch is attached.

diff -urN linux-2.6.8/fs/fat/inode.c linux-2.6.8-fat/fs/fat/inode.c
--- linux-2.6.8/fs/fat/inode.c 2004-09-30 15:27:58.343661051 +0200
+++ linux-2.6.8-fat/fs/fat/inode.c 2004-09-30 15:33:32.820915377 +0200
@@ -1003,6 +1003,8 @@
/* all is as it should be */
} else if (media == 0xf8 && FAT_FIRST_ENT(sb, 0xfe) == first) {
/* bad, reported on pc9800 */
+ } else if (media == 0xf8 && FAT_FIRST_ENT(sb, 0xff) == first) {
+ /* bad, reported on Nokia phone with USB storage */
} else if (media == 0xf0 && FAT_FIRST_ENT(sb, 0xf8) == first) {
/* bad, reported with a MO disk on win95/me */
} else if (first == 0) {

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