Date: Thu, 9 Apr 2009 00:31:08 +0900 From: Norikatsu Shigemura <nork@FreeBSD.org> To: jhb@FreeBSD.org Cc: freebsd-current@FreeBSD.org, Thomas Sparrevohn <Thomas.Sparrevohn@btinternet.com>, 'Damian Gerow' <dgerow@afflictions.org>, Norikatsu Shigemura <nork@FreeBSD.org> Subject: Re: ZFS checksum errors on USB attach (Was: ZFS data error without reasons) Message-ID: <20090409003108.fe768d54.nork@FreeBSD.org> In-Reply-To: <012d01c9b706$ccace720$6606b560$@Sparrevohn@btinternet.com> References: <49BD117B.2080706@163.com> <20090331100328.H46640@rust.salford.ac.uk> <20090401044011.GA51164@plebeian.afflictions.org> <200904010846.55770.hselasky@c2i.net> <20090401121704.GA92522@plebeian.afflictions.org> <20090401234315.GA11125@plebeian.afflictions.org> <20090405015627.GB47968@plebeian.afflictions.org> <012d01c9b706$ccace720$6606b560$@Sparrevohn@btinternet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi jhb! I got ZFS checksum error issue, too. So I found a way of fixing this issue. Please back out following change. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_dir.c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - revision 1.5 date: 2009/03/18 16:19:44; author: jhb; state: Exp; lines: +2 -0 SVN rev 189967 on 2009-03-18 16:19:44Z by jhb The zfs_get_xattrdir() function is used to find the extended attribute directory for a znode. When the directory already exists, it returns a referenced but unlocked vnode. When a directory does not yet exist, it calls zfs_make_xattrdir() to create a new one. zfs_make_xattrdir() returns the vnode both referenced and and locked and zfs_get_xattrdir() was leaking this vnode lock to its callers. Fix this by dropping the vnode lock if zfs_make_xattrdir() successfully creates a new extended attribute directory. Reviewed by: pjd - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Validation] 1. I got ZFS checksum error issue 2. Backup 3. Restructure ZPool 4. Restore (But ZFS checksum error) 5. Restructure ZPool with kern.smp.disabled=1 (Almost good, but...) 6. Restore 7. Backout zfs_dir#1.5 8. Good works for me I tested many backup&restore:-). On Mon, 6 Apr 2009 23:26:57 +0100 "Thomas Sparrevohn" <Thomas.Sparrevohn@btinternet.com> wrote: > Just a me too - Here - I just seen significant corruption of a newly > restored pool - the system had been running a portupgrade - I am getting > worried - but the disks shows no errors - neither from the ATA subsystem nor > from smartctl or some vendor testing tools I have > -----Original Message----- > From: owner-freebsd-current@freebsd.org > [mailto:owner-freebsd-current@freebsd.org] On Behalf Of Damian Gerow > Sent: 05 April 2009 02:56 > To: freebsd-current@freebsd.org > Subject: Re: ZFS checksum errors on USB attach (Was: ZFS data error without > reasons) > I've filed kern/133373 to track this.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090409003108.fe768d54.nork>