Re: Request for review testing of VFS locking patch
On Thu, 19 Sep 2002, Jeff Roberson wrote: This patch touches every filesystem. I have tested with several but I would appreciate more extensive testing especially if you use one of the lesser used filesystems (ie non ufs). Please test with WITNESS and DEBUG_VFS_LOCKS enabled. If you find that it drops into the debugger please get a back trace and then do the following: Well, haven't tested it with smbfs, but may point that patch for nwfs contains two vref()s instead of vgetref(). -- Boris Popov http://rbp.euro.ru To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: Request for review testing of VFS locking patch
On Fri, 20 Sep 2002, Boris Popov wrote: On Thu, 19 Sep 2002, Jeff Roberson wrote: Well, haven't tested it with smbfs, but may point that patch for nwfs contains two vref()s instead of vgetref(). Ah, thanks very much. (un?)luckily it was in debug code so it would not have been noticed for a while. I have updated the patch to reflect this change as well as three bugs in the nfs locking that phk and I found. It's at the same place: http://www.chesapeake.net/~jroberson/vfssmp.diff Thanks, Jeff To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Request for review testing of VFS locking patch
I have a patch available at http://www.chesapeake.net/~jroberson/vfssmp.diff that locks the majority of the vnode fields. The namecache locking has been omitted from this patch. The locking has been specified in vnode.h and all interlock, syncer, and vn lock usage has been verified. Any places that are unlocked now should be marked with mp_fixme's. This patch touches every filesystem. I have tested with several but I would appreciate more extensive testing especially if you use one of the lesser used filesystems (ie non ufs). Please test with WITNESS and DEBUG_VFS_LOCKS enabled. If you find that it drops into the debugger please get a back trace and then do the following: w vfs_badlock_panic 0 w vfs_badlock_print 0 w vfs_badlock_mutex 0 Currently I know that sendfile() and the UFS snapshot code fail assertions. There are many diffs that just switch from explicit mtx ops to using the new VI_*LOCK macros. I did this only in places where I actually reviewed the code. The remaining direct v_interlock accesses serve as indicators of behavior that needs to be further verified. I also have not verified usage of the mntvnode mtx or the freelist mutex etc. There may be racees there. I did, however, fixup the broken vflush() mntvnode race. Once this has been commited I will be free to lock the rest of the vnode and then move on to other filesystem related datastructures. My goal is to have the high level VFS and at least some filesystems SMP safe for 5.0. Any feedback is welcome. Thanks, Jeff To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message