Commit fd44b2f9 authored by Andries E. Brouwer's avatar Andries E. Brouwer Committed by Linus Torvalds

[PATCH] fat/inode.c

Two years ago, OGAWA Hirofumi removed some ugly code and
added a few simple tests to the FAT filesystem code,
intended to avoid recognizing non-FAT as FAT (for people who
fail to specify rootfstype=, forcing the kernel to guess).

That worked fairly well, until this year.

I have now seen a thread in Czech and a report from Holland that
involved the "FAT: bogus sectors-per-track value" error message.

The patch below removes this test again. The advantage is that
some real-life FAT filesystems can be mounted again.

The disadvantage that more non-FAT fss will be accepted as FAT.

Ferry van Steen <freaky@bananateam.nl> reports "the patch Andries
Brouwer gave me seems to work".
Signed-off-by: default avatarAndries Brouwer <aeb@cwi.nl>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 93b3d545
...@@ -843,18 +843,12 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, ...@@ -843,18 +843,12 @@ int fat_fill_super(struct super_block *sb, void *data, int silent,
brelse(bh); brelse(bh);
goto out_invalid; goto out_invalid;
} }
if (!b->secs_track) {
if (!silent) /*
printk(KERN_ERR "FAT: bogus sectors-per-track value\n"); * Earlier we checked here that b->secs_track and b->head are nonzero,
brelse(bh); * but it turns out valid FAT filesystems can have zero there.
goto out_invalid; */
}
if (!b->heads) {
if (!silent)
printk(KERN_ERR "FAT: bogus number-of-heads value\n");
brelse(bh);
goto out_invalid;
}
media = b->media; media = b->media;
if (!FAT_VALID_MEDIA(media)) { if (!FAT_VALID_MEDIA(media)) {
if (!silent) if (!silent)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment