Subject: Re: support for pre-4.4BSD filesystem broken
To: Matthias Drochner <M.Drochner@fz-juelich.de>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: tech-kern
Date: 12/09/1999 20:03:23
On Thu, Dec 09, 1999 at 07:09:08PM +0100, Matthias Drochner wrote:
>
> I just found that I can't mount ULTRIX filesystems anymore. There is
> some consistency check which uses a variable which is not initialized at
> this point in case the ffs is an old one:
>
> fs->fs_cssize > fragroundup(fs, fs->fs_ncg * sizeof(struct csum))
>
> The fragroundup() macro uses the unintialized fs->fs_qfmask.
> The check went in with that patch:
>
> [ffs_vfsops.c]
> revision 1.46
> date: 1998/12/04 11:00:40; author: bouyer; state: Exp; lines: +11 -5
> Sanity check a few values in the superblock, to avoid mallocing huge
> memory area if we try to mount a corrupted filesystem. Fixes kern/3933.
>
> So - what do do about that? Obviously we have 2 choices:
> a) move the check down
> b) move the ffs_oldfscompat() call up
>
> b looks easier for me, or am I missing something?
Well, the malloc happens before the call to ffs_oldfscompat() so we would have
to move ffs_oldfscompat() anyway. I can't see any problems in moving the
ffs_oldfscompat() just before the check.
--
Manuel Bouyer <bouyer@antioche.eu.org>
--