Date: Sat, 8 Nov 2003 19:35:16 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: Kirk McKusick <mckusick@beastie.mckusick.com> Cc: arch@freebsd.org Subject: Re: newfs and mount vs. half-baked disks Message-ID: <20031108191433.J608@gamplex.bde.org> In-Reply-To: <200311072348.hA7NmgaG000289@beastie.mckusick.com> References: <200311072348.hA7NmgaG000289@beastie.mckusick.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 7 Nov 2003, Kirk McKusick wrote: > > From: Bruce Evans <bde@zeta.org.au> > > ... > > Some cases can be discerned anyway, depending on how much erasing of > > metadata newfs does when it starts. E.g., if there was an ffs file > > system on the disk, then this will be recorded in the disk label unless > > that feature has been axed). newfs doesn't rewrite the label until > > just before it finishes, so the old label can be looked at to determine > > what was there. Writing the label last may be a bug though. Perhaps > > newfs should erase all the primary metadata for the old filesystem > > when it starts so as to minimise the window where there may be > > conflicting metadata. > > You cannot depend on the disk label as the disklabel is going away > or at least being wholly overhauled with GEOM. In particular, the > existing disk label only has a 2^32 block count which is insufficient > for filesystems larger than 2Tb. I don't use GEOM, so the label won't be going away for me. Anyway, there is no dependency (the label is just one of the things that one might examine to recover a crashed disk), and any overaul by GEOM would have to duplicate the functionality of storing metadata about the superblocks somewhere outside the superblocks. (I actually store metadata about file systems in (backups of) disk files in /var/backups. Normal backups provide inadequate backups of metadata.) The block count is in units of sector size, so disks much larger than 2TB can be supported by disklabel using (fake if necessary) sector sizes larger than 512. File systems need to use similarly large block (fragment for ffs) sizes, and some patches are needed for reading superblocks if the sector size is larger than 8K. Since ffs uses a block size of 16K by default, a sector size of 16K are not unreasonable and this is sufficent for disks smaller then 64TB. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031108191433.J608>