"recursive lock for object" & "unlocking unheld lock" in smb

From: Alexander Leidinger <Alexander_at_Leidinger.net>
Date: Wed, 27 Sep 2006 16:01:45 +0200
Hi,

yesterday I rsynced a smb share from a samba-3.0.x server (FreeBSD 4)  
via a smb mount (current from Sep 23) "locally" (mount -t smbfs from  
the samba server and rsync a/ b/; most easy solution to convert some  
ISO-8859-1 filenames to UTF-8 ("dos charset = UTF8" in smb.conf!)  
while moving to another system).

Today I noticed the following in the daily mail on the -current system:

+++ /tmp/security.w9S5FGBa	Wed Sep 27 03:02:41 2006
+netsmb_dev: loaded
+smb_co_lock: recursive lock for object 1
+lockmgr: thread 0xc3d6fbd0 unlocking unheld lock
+KDB: stack backtrace:
+lockmgr(c79a9c08,2006,c79a9c2c,c3d6fbd0,e5a38b9c,...) at lockmgr+0x529
+smb_co_put(c79a9c00,e5a38b9c,c3d6fbd0,c34a7c00,c79a9c00,...) at  
smb_co_put+0x6e
+smb_sm_lookup(e5a38b28,e5a38b08,e5a38b9c,e5a38b04,c3654a00,...) at  
smb_sm_lookup+0x10d
+smb_usr_lookup(c32cb800,e5a38b9c,e5a38b98,e5a38b94,0,...) at  
smb_usr_lookup+0x6c
+nsmb_dev_ioctl(c3d65200,82fc6e6a,c32cb800,3,c3d6fbd0) at nsmb_dev_ioctl+0x2d5
+giant_ioctl(c3d65200,82fc6e6a,c32cb800,3,c3d6fbd0,...) at giant_ioctl+0x51
+devfs_ioctl_f(c3b57558,82fc6e6a,c32cb800,c3e36a80,c3d6fbd0) at  
devfs_ioctl_f+0x9d
+kern_ioctl(c3d6fbd0,3,82fc6e6a,c32cb800) at kern_ioctl+0x286
+ioctl(c3d6fbd0) at ioctl+0xca
+syscall(3b,3b,3b,bfbfe91c,bfbfe444,...) at syscall+0x28f
+Xint0x80_syscall() at Xint0x80_syscall+0x1f
+--- syscall (54, FreeBSD ELF32, ioctl), eip = 0x28138e43, esp =  
0xbfbfe434, ebp = 0xbfbfe750 ---
+smb_co_lock: recursive lock for object 1
+lockmgr: thread 0xc3aa8870 unlocking unheld lock
+KDB: stack backtrace:
+lockmgr(c449dc08,2006,c449dc2c,c3aa8870,e59edb9c,...) at lockmgr+0x529
+smb_co_put(c449dc00,e59edb9c,c3aa8870,c7499700,c449dc00,...) at  
smb_co_put+0x6e
+smb_sm_lookup(e59edb28,e59edb08,e59edb9c,e59edb04,c3654a00,...) at  
smb_sm_lookup+0x10d
+smb_usr_lookup(c30cc800,e59edb9c,e59edb98,e59edb94,0,...) at  
smb_usr_lookup+0x6c
+nsmb_dev_ioctl(c76b4100,82fc6e6a,c30cc800,3,c3aa8870) at nsmb_dev_ioctl+0x2d5
+giant_ioctl(c76b4100,82fc6e6a,c30cc800,3,c3aa8870,...) at giant_ioctl+0x51
+devfs_ioctl_f(c44d6360,82fc6e6a,c30cc800,c3e36a80,c3aa8870) at  
devfs_ioctl_f+0x9d
+kern_ioctl(c3aa8870,3,82fc6e6a,c30cc800) at kern_ioctl+0x286
+ioctl(c3aa8870) at ioctl+0xca
+syscall(bfbf003b,bfbf003b,e59e003b,bfbfe91c,bfbfe444,...) at syscall+0x28f
+Xint0x80_syscall() at Xint0x80_syscall+0x1f
+--- syscall (54, FreeBSD ELF32, ioctl), eip = 0x28138e43, esp =  
0xbfbfe434, ebp = 0xbfbfe750 ---

To reproduce this it should be enough to setup samba, export something  
from it and mount it somewhere on a FreeBSD system. I had one file  
which was not owned by the user I used to authenticate to the samba  
server and this file was not readable by enyone except the owner  
itself (root). I tried to rsync twice before having a look at the file  
at the source system. Maybe this is needed to reproduce this.

Bye,
Alexander.

-- 
Out of the crooked timber of humanity no straight thing can ever be made.
		-- Immanuel Kant

http://www.Leidinger.net    Alexander _at_ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild _at_ FreeBSD.org  : PGP ID = 72077137
Received on Wed Sep 27 2006 - 12:02:28 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:00 UTC