Subject: Re: 2.0 and >2T filesystems
From: David Laight <email@example.com>
Date: 11/24/2005 07:46:58
On Wed, Nov 23, 2005 at 08:12:53PM -0500, der Mouse wrote:
> >> My tests show that ffs1, at least, is broken with >2T filesystems.
> >> [...]
> > IIRC, since the sector size is 512 bytes, 2T is 2^32 sectors.
> > So the inodes can't address more than that in ffs1.
> ...I think that's wrong. The values in the block tables in the inodes
> are not in device sectors, nor even in DEV_BSIZE units, but in frags -
> this is why fsbtodb and dbtofsb exist. And, as I said, I specifically
> built the filesystem with 4KB frags (and 32KB blocks).
Correct, ffsv1 should supports filesystems with > 2^32 sectors provided
the number of fragments is below 2^32 (or maybe 2^31).
Given the way that ffsv2 is supported in the kernel, I would expect that
any errors to do with sector numbers above 2^32 (or even 2^31) apply
to both ffsv1 and ffsv2.
Ffsv2 supports > 2^32 fragments per filesystem, and has larger fields
for timestamps. Otherwise the code is much the same as ffsv1.
David Laight: firstname.lastname@example.org