From owner-freebsd-fs@freebsd.org Wed Jan 11 21:50:10 2012
Message-Id: <201201112047.q0BKlTW8042343@fire.js.berklix.net>
To: Kirk McKusick <mckusick@@mckusick.com>
From: "Julian H. Stacey" <jhs@@berklix.com>
Organization: http://www.berklix.com BSD Unix Linux Consultancy, Munich Germany
User-agent: EXMH on FreeBSD http://www.berklix.com/free/
X-URL: http://www.berklix.com
In-reply-to: Your message "Tue, 10 Jan 2012 14:21:08 PST."
	<201201102221.q0AML8MX012837@chez.mckusick.com> 
Date: Wed, 11 Jan 2012 21:47:29 +0100
Cc: fs@freebsd.org
Subject: Re: unexpected soft update inconsistency - cannot fix 
X-BeenThere: freebsd-fs@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Filesystems <freebsd-fs.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-fs>,
	<mailto:freebsd-fs-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-fs>
List-Post: <mailto:freebsd-fs@freebsd.org>
List-Help: <mailto:freebsd-fs-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-fs>,
	<mailto:freebsd-fs-request@freebsd.org?subject=subscribe>
Sender: owner-freebsd-fs@freebsd.org
Errors-To: owner-freebsd-fs@freebsd.org

Hi Kirk cc fs@, 

OK, it all worked as you said, Thanks for the explanations ! 
Maybe if I or others get some time it'd be worth tweaking the code:
- It's suprising ".." has to be 2nd entry & fsck/fsdb can't find it later.
- fsck &/or fsdb dont have to just give up on no parent inode,
  they could search down from root looking for a prent inode listing
  the damaged child inode, like I did with find, (Possibly first
  stab might be some nasty system("...") cludges to a printf as a
  hint to user).
I'll save this mail thread in my personal tree in case 
I get time to hack code :-)

Detail of the repair:
	cd /mnt/ftp/.backup/pri/FreeBSD/development/FreeBSD-CVS/ports/net/\
		keepalived/Attic
	ls -fa
		./  Makefile,v  distinfo,v  pkg-descr,v pkg-plist,v
	mv Makefile,v Makefile,v.sav
	ls -fa
		./  distinfo,v  pkg-descr,v pkg-plist,v Makefile,v.sav
	umount mnt
	fsdb -r /dev/ad4s4g	# just looking 
	inode 825575
		current inode: directory
		I=825575 MODE=40755 SIZE=512
		        BTIME=Dec 29 20:09:19 2011 [0 nsec]
		        MTIME=Jan 11 08:57:58 2012 [0 nsec]
		        CTIME=Jan 11 08:57:58 2012 [0 nsec]
		        ATIME=Jan 11 08:58:14 2012 [0 nsec]
		OWNER=mailnull GRP=mailnull LINKCNT=2 FLAGS=0 BLKCNT=4 \
			GEN=29c28025
	fsdb (inum: 825575)> ls
		slot 0 ino 825575 reclen 40: directory, `.'
		slot 1 ino 825581 reclen 20: regular, `distinfo,v'
		slot 2 ino 825582 reclen 20: regular, `pkg-descr,v'
		slot 3 ino 825583 reclen 20: regular, `pkg-plist,v'
		slot 4 ino 825580 reclen 412: regular, `Makefile,v.sav'
	^D			# end of looking
	fsck /dev/ad4s4g
		** /dev/ad4s4g
		** Last Mounted on /mnt
		** Phase 1 - Check Blocks and Sizes
		** Phase 2 - Check Pathnames
		MISSING '..'  I=825575  OWNER=mailnull MODE=40755
		SIZE=512 MTIME=Jan 11 08:57 2012 
		DIR=/ftp/.backup/pri/FreeBSD/development/FreeBSD-CVS/ports/\
			net/keepalived/Attic
		FIX? [yn] y
		** Phase 3 - Check Connectivity
		** Phase 4 - Check Reference Counts
		LINK COUNT DIR I=79302719  OWNER=mailnull MODE=40755
		SIZE=512 MTIME=Dec 29 20:09 2011  COUNT 3 SHOULD BE 4
		ADJUST? [yn] y
		** Phase 5 - Check Cyl groups
		1360879 files, 126366566 used, 180989615 free (1437463 frags, \
			 22444019 blocks, 0.5% fragmentation)
		***** FILE SYSTEM IS CLEAN *****
		***** FILE SYSTEM WAS MODIFIED *****
	fsck /dev/ad4s4g	# No errs .. FILE SYSTEM IS CLEAN
	mount -t ufs /dev/ad4s4g  /mnt
	cd /mnt/ftp/.backup/pri/FreeBSD/development/FreeBSD-CVS/ports/net/\
		keepalived/Attic
	mv Makefile,v.sav Makefile,v

Cheers,
Julian
-- 
Julian Stacey, BSD Unix Linux C Sys Eng Consultants Munich http://berklix.com
 Reply below not above, cumulative like a play script, & indent with "> ".
 Format: Plain text. Not HTML, multipart/alternative, base64, quoted-printable.
_______________________________________________
freebsd-fs@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-fs
To unsubscribe, send any mail to "freebsd-fs-unsubscribe@freebsd.org"


