From owner-cvs-src-old@FreeBSD.ORG Sat Feb 13 16:22:28 2010 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D6514106568D for ; Sat, 13 Feb 2010 16:22:28 +0000 (UTC) (envelope-from gavin@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C7ED58FC19 for ; Sat, 13 Feb 2010 16:22:28 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id o1DGMSQH046502 for ; Sat, 13 Feb 2010 16:22:28 GMT (envelope-from gavin@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o1DGMStT046501 for cvs-src-old@freebsd.org; Sat, 13 Feb 2010 16:22:28 GMT (envelope-from gavin@repoman.freebsd.org) Message-Id: <201002131622.o1DGMStT046501@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to gavin@repoman.freebsd.org using -f From: Gavin Atkinson Date: Sat, 13 Feb 2010 16:22:08 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sbin/growfs growfs.c X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Feb 2010 16:22:28 -0000 gavin 2010-02-13 16:22:08 UTC FreeBSD src repository Modified files: sbin/growfs growfs.c Log: SVN rev 203835 on 2010-02-13 16:22:08Z by gavin When growing a UFS1 filesystem, we need to initialise all inodes in any new cylinder groups that are created. When the filesystem is first created, newfs always initialises the first two blocks of inodes, and then in the UFS1 case will also initialise the remaining inode blocks. The changes in growfs.c 1.23 broke the initialisation of all inodes, seemingly based on this implementation detail in newfs(8). The result was that instead of initialising all inodes, we would actually end up initialising all but the first two blocks of inodes. If the filesystem was grown into empty (all-zeros) space then the resulting filesystem was fine, however when grown onto non-zeroed space the filesystem produced would appear to have massive corruption on the first fsck after growing. A test case for this problem can be found in the PR audit trail. Fix this by once again initialising all inodes in the UFS1 case. PR: bin/115174 Submitted by: Nate Eldredgei nge cs.hmc.edu Reviewed by: mjacob MFC after: 1 month Revision Changes Path 1.30 +2 -4 src/sbin/growfs/growfs.c