Re: [Q] FAT driver enhancement

OGAWA Hirofumi (hirofumi@mail.parknet.co.jp)
Tue, 02 Apr 2002 22:27:52 +0900


Helge Hafting <helgehaf@aitel.hist.no> writes:

> OGAWA Hirofumi wrote:
> >
> > Jos Hulzink <josh@stack.nl> writes:
> >
> > > Hi,
> > >
> > > A while ago I initiated a thread about mounting a NTFS partition as FAT
> > > partition. The problem is that FAT partitions do not have a real
> > > fingerprint, so the FAT driver mounts almost anything.
> > >
> > > The current 2.5 driver only tests if some values in the bootsector are
> > > non-zero. IMHO, this is not strict enough. For example, the number of FATs
> > > is always 1 or 2 (anyone ever seen more ?). Besides, when there are two
> > > FATs, all entries in those FATs should be equal. If they are not, we deal
> > > with a non-FAT or broken FAT partition, and we should not mount.
> > >
> > > It's not a real fingerprint, but what are the chances all sectors of what
> > > we think is the FAT are equal on non-FAT filesystems ? Yes, when you just
> > > did a
> > >
> > > dd if=/dev/zero of=/dev/partition; mkfs.somefs /dev/partition
> > >
> > > there is a chance, but that's an empty filesystem. Data corruption isn't
> > > that bad on an empty disk. We know that a FAT is at the beginning of a
> > > partition and I assume that any other filesystem will fill up those first
> > > sectors very soon.
> > >
> > > Questions:
> > >
> > > 1) How do you think about the checking of the FAT tables ? It definitely
> > > will slow down the mount.
> >
> > Unfortunately if FAT table has bad sector, FAT tables may not be the
> > same.
>
> And then you don't want to mount unless you know what you
> are doing. And those knowing what they are doing can be bothered
> to use some kind of "force" option in this case. Or perhaps an
> option that selects which FAT to trust.

I mean I/O error, not data damage.

-- 
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
-
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/