lockmgr: thread 0xc21e2780 unlocking unheld lock

John Baldwin jhb at freebsd.org
Sat Jul 15 04:49:57 UTC 2006


On Friday 14 July 2006 23:19, SANETO Takanori wrote:
> I think that "==" should be "!=" in the patched code.

Yeah, I fixed that in an updated patch to the OP that includes another
fix for a missing lock in smbfs_unmount().

> John Baldwin wrote:
> > On Tuesday 11 July 2006 09:29, Jiawei Ye wrote:
> >> I was doing "sudo mount_smbfs //user at server/share /mnt" when the
> >> following msg appeared. smbfs.ko was not loaded.
> > 
> > Does building with INVARIANTS fix it?  If so, try this patch (it looks
> > like it has been broken since 1.1 of the smbfs code):
> > 
> > Index: smb_conn.c
> > ===================================================================
> > RCS file: /usr/cvs/src/sys/netsmb/smb_conn.c,v
> > retrieving revision 1.16
> > diff -u -r1.16 smb_conn.c
> > --- smb_conn.c	31 Oct 2005 15:41:27 -0000	1.16
> > +++ smb_conn.c	11 Jul 2006 15:01:10 -0000
> > @@ -233,7 +233,8 @@
> >  	lockinit(&cp->co_lock, PZERO, objname, 0, 0);
> >  	cp->co_level = level;
> >  	cp->co_usecount = 1;
> > -	KASSERT(smb_co_lock(cp, LK_EXCLUSIVE, td) == 0, ("smb_co_init: lock 
> > failed"));
> > +	if (smb_co_lock(cp, LK_EXCLUSIVE, td) == 0)
> > +	    panic("smb_co_init: lock failed"));
> >  }
> >  
> >  static void
> > 
> 
> 

-- 
John Baldwin


More information about the freebsd-current mailing list