NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/46822: NetBSD 5.1.2 seems to deadlock in the filesystem (or other kernel parts) "sometimes"
The following reply was made to PR kern/46822; it has been noted by GNATS.
From: David Holland <dholland-bugs%netbsd.org@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: kern/46822: NetBSD 5.1.2 seems to deadlock in the filesystem (or
other kernel parts) "sometimes"
Date: Wed, 22 Aug 2012 05:37:29 +0000
On Mon, Aug 20, 2012 at 02:40:00PM +0000,
Wolfgang.Stukenbrock%nagler-company.com@localhost wrote:
> Our productive webserver locks up from time to time.
> [everything tstiles, seems to be fs-related]
In all probability it's deadlocking in ufs_rename. The fixes for
ufs_rename are not in 5.1.2; they only got committed to the netbsd-5
branch in May, and I don't think they've been applied to the _PATCH
branches at all.
If you don't want to update to the latest 5.1_STABLE, and if you're
running 5.1.2 I'd expect that's the case, I'd suggest pulling these
fixes in directly.
It's probably also a good idea to test them on 5.1.2 on a crash
machine before going into production, just in case; there are a lot of
strange problems in the history of that patch set, some of which
manifested only with -5 and not with -current. It's entirely possible
that the correct operation might depend on something in 5.1_STABLE
that's not in 5.1.2.
My recommendation would be to pull in those fixes; either by updating
on the netbsd-5 branch or by specifically pulling the changeset in.
(Even if the problem turns out to be something else it's probably
worth doing.)
The following are the commit mails from the netbsd-5 backport of the
rename fixes:
------
From: "Jeff Rizzo" <riz%netbsd.org@localhost>
To: source-changes%NetBSD.org@localhost
Subject: CVS commit: [netbsd-5] src/sys/ufs
Date: Sat, 19 May 2012 17:28:29 +0000
Module Name: src
Committed By: riz
Date: Sat May 19 17:28:29 UTC 2012
Modified Files:
src/sys/ufs/lfs [netbsd-5]: lfs_vnops.c
src/sys/ufs/ufs [netbsd-5]: inode.h ufs_extern.h ufs_lookup.c
ufs_vnops.c ufs_wapbl.c
Log Message:
Apply patch (requested by buhrow in ticket #1759):
sys/ufs/lfs/lfs_vnops.c patch
sys/ufs/ufs/inode.h patch
sys/ufs/ufs/ufs_extern.h patch
sys/ufs/ufs/ufs_lookup.c patch
sys/ufs/ufs/ufs_vnops.c patch
sys/ufs/ufs/ufs_wapbl.c patch
Port dholland's ufs_rename locking changes to netbsd-5.
[buhrow, ticket #1759]
Hello. More testing has revealed a minor misunderstanding between the
vnode API in -current and 5.x. The below patch, against NetBSD-5.1
sources, rolls all the accumulated patches into one patch set. With this
patch, I believe you can now run with WAPBL, softdep or traditional ufs
semantics with heavy file loads and avoid panics due to resource exhaustion
and/or tstile deadlocks. Testing has been done on I386, both uniprocessor
and multiprocessor, and on Sparc machines in uniprocessor mode, though I
think multiprocessor Sparc would be fine as well. Since these changes are
machine independent, I don't anticipate any issues on any platform. It is
my hope that modulo any final issues that come up in the final round of
testing I'm currently performing, these patches will be ready to be pulled
up into the NetBSD-5 branch.
Finally, I'd like to thank mouse@ and hannken@ for their help and
patience in helping me track down and test the final versions of these
patches. With their assistance, I'm confident these patches make NetBSD-5
a much more stable and robust operating environment in a variety of
setings.
To generate a diff of this commit:
cvs rdiff -u -r1.218 -r1.218.6.1 src/sys/ufs/lfs/lfs_vnops.c
cvs rdiff -u -r1.54.4.1 -r1.54.4.2 src/sys/ufs/ufs/inode.h
cvs rdiff -u -r1.60 -r1.60.8.1 src/sys/ufs/ufs/ufs_extern.h
cvs rdiff -u -r1.99.4.1 -r1.99.4.2 src/sys/ufs/ufs/ufs_lookup.c
cvs rdiff -u -r1.169.4.1 -r1.169.4.2 src/sys/ufs/ufs/ufs_vnops.c
cvs rdiff -u -r1.2.8.1 -r1.2.8.2 src/sys/ufs/ufs/ufs_wapbl.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
------
From: "Jeff Rizzo" <riz%netbsd.org@localhost>
To: source-changes%NetBSD.org@localhost
Subject: CVS commit: [netbsd-5] src/usr.bin/pmap
Date: Sun, 20 May 2012 17:32:24 +0000
Module Name: src
Committed By: riz
Date: Sun May 20 17:32:24 UTC 2012
Modified Files:
src/usr.bin/pmap [netbsd-5]: pmap.h
Log Message:
usr.bin/pmap/pmap.h patch
Fix build problem introduced by ticket #1759.
[jdc, ticket #1760]
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.7.6.1 src/usr.bin/pmap/pmap.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
------
From: "Jeff Rizzo" <riz%netbsd.org@localhost>
To: source-changes%NetBSD.org@localhost
Subject: CVS commit: [netbsd-5] src/sys/ufs/ufs
Date: Tue, 22 May 2012 21:44:38 +0000
Module Name: src
Committed By: riz
Date: Tue May 22 21:44:38 UTC 2012
Modified Files:
src/sys/ufs/ufs [netbsd-5]: ufs_vnops.c
Log Message:
Pull up following patch (requested by buhrow in ticket #1763):
sys/ufs/ufs/ufs_vnops.c: patch
Make sure we return EXDEV on cross-device links rather than panicing
the system. This corrects a pasting error from the merged patches
in ticket 1759.
Thanks to hannken@ for figuring out the error.
Fixes pr kern/46472
Tested by buhrow@
To generate a diff of this commit:
cvs rdiff -u -r1.169.4.2 -r1.169.4.3 src/sys/ufs/ufs/ufs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
------
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index