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.