From owner-cvs-all Tue Feb 25 15:38:50 2003 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0EE5837B401 for ; Tue, 25 Feb 2003 15:38:48 -0800 (PST) Received: from rootlabs.com (root.org [67.118.192.226]) by mx1.FreeBSD.org (Postfix) with SMTP id 4ED7343FD7 for ; Tue, 25 Feb 2003 15:38:30 -0800 (PST) (envelope-from nate@rootlabs.com) Received: (qmail 64903 invoked by uid 1000); 25 Feb 2003 23:38:17 -0000 Date: Tue, 25 Feb 2003 15:38:17 -0800 (PST) From: Nate Lawson To: Kirk McKusick Cc: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/ufs/ffs ffs_vfsops.c In-Reply-To: <200302252321.h1PNL9T7021673@repoman.freebsd.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Tue, 25 Feb 2003, Kirk McKusick wrote: > Modified files: > sys/ufs/ffs ffs_vfsops.c > Log: > Change the field used to test whether the superblock has been updated > from the filesystem size field to the filesystem maximum blocksize > field. The problem is that older versions of growfs updated only the > new size field and not the old size field. This resulted in the old > (smaller) size field being copied up to the new size field which > caused the filesystem to appear to fsck to be badly trashed. > > This also adds a sanity check to ensure that the superblock is not > being updated when the filesystem is mounted read-only. Obviously > such an update should never happen. Thanks! For others' benefit, this fixes a long-standing problem that started happening for me around Dec. 1 where ffs_sbupdate would trash fs_dsize on unmount. Those who had similar problems should try this patch. I'll try to put together a patch for growfs to address the new sb fields. -Nate To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message