Subject: Re: 2.0 and >2T filesystems
To: <>
From: David Laight <david@l8s.co.uk>
List: tech-kern
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.
> 
> Right...
> 
> > 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

-- 
David Laight: david@l8s.co.uk