Samba 3.0.14a Openldap 2.2.13 Debian Linux 2.4.27 Client problem with oplocks (usually affecting outlook.pst files). Happens across about 50 servers up to 3/4 times a day on some servers. Following diagnostics in client logs (/var/local/samba/log.<pcname>) [2005/06/13 09:05:55, 0] smbd/service.c:make_connection(794) chpc140 (10.0.39.227) couldn't find service chprps0 [2005/06/13 09:14:31, 0] tdb/tdbutil.c:tdb_log(725) tdb(/var/local/samba/locks/locking.tdb): tdb_lock failed on list 55 ltype=1 (Resource deadlock avoided) [2005/06/13 09:14:31, 0] tdb/tdbutil.c:tdb_log(725) tdb(/var/local/samba/locks/locking.tdb): tdb_lock failed on list 55 ltype=0 (Resource deadlock avoided) [2005/06/13 09:14:31, 0] tdb/tdbutil.c:tdb_log(725) tdb(/var/local/samba/locks/locking.tdb): tdb_unlock: count is 0 [2005/06/13 09:14:31, 0] smbd/oplock.c:request_oplock_break(986) request_oplock_break: PANIC : breaking our own oplock requested for dev = 3a01, inode = 30916664, file_id = 837 and no fsp found ! [2005/06/13 09:14:31, 0] lib/util.c:smb_panic2(1495) PANIC: request_oplock_break: no fsp found for our own oplock [2005/06/13 09:14:31, 0] lib/util.c:smb_panic2(1503) BACKTRACE: 13 stack frames: #0 /opt/samba/sbin/smbd(smb_panic2+0x19d) [0x81a4fa1] #1 /opt/samba/sbin/smbd(smb_panic+0x13) [0x81a4dff] #2 /opt/samba/sbin/smbd(request_oplock_break+0x1cb) [0x81cf1fb] #3 /opt/samba/sbin/smbd [0x80b719d] #4 /opt/samba/sbin/smbd(open_file_shared1+0x758) [0x80b82c8] #5 /opt/samba/sbin/smbd(reply_ntcreate_and_X+0x7bc) [0x809532c] #6 /opt/samba/sbin/smbd [0x80c7da8] #7 /opt/samba/sbin/smbd [0x80c7e3e] #8 /opt/samba/sbin/smbd(process_smb+0x1be) [0x80c812e] #9 /opt/samba/sbin/smbd(smbd_process+0x14f) [0x80c8c0f] #10 /opt/samba/sbin/smbd(main+0x773) [0x820065f] #11 /lib/libc.so.6(__libc_start_main+0xbb) [0x401d414f] #12 /opt/samba/sbin/smbd(ldap_msgfree+0x75) [0x8077f11] [2005/06/13 09:14:33, 1] smbd/service.c:make_connection_snum(642) chpc140 (10.0# Following is the smb.conf file: # Samba Configuration File. # # This file will also include the following: # machine.conf (local machine specific information) # groups.conf (local groups to this machine) # extra.conf (an area where LANA's can add extra shares) # # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # # Global Configuration # This has system settings as well as defaults for all of the shares. # # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [global] include = /opt/samba/etc/machine.conf lock directory = /var/local/samba/locks pid directory = /var/local/samba/locks # Do not set "socket options", as per the recommendation on page 366 of the # Samba-3 By Example book, since we are running a post 2.2 Linux kernel #socket options = TCP_NODELAY SO_KEEPALIVE socket options = SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 ldapserver = "localhost" ldap admin dn = "uid=sambaBDC,ou=Accounts,dc=opus,dc=co,dc=nz" ldap passwd sync = yes ldap port = 389 ldap ssl = no ldap suffix = dc=opus,dc=co,dc=nz ldap user suffix = ou=People ldap group suffix = ou=Group ldap machine suffix = ou=Computers ldap idmap suffix = ou=Idmap guest account = nobody passdb backend = ldapsam_compat:ldap://localhost enable privileges = yes # ------------------------------------------------------------- # Logging options # log level = 1 log file = /var/local/samba/log.%m max log size = 1024 # ------------------------------------------------------------- # Printing options # printing = cups printcap name = cups printer admin = printadm # ------------------------------------------------------------- # Browsing / Broadcast / WINS Section # domain master = no local master = yes preferred master = yes os level = 65 time server = true wins server = 151.135.56.1 # ------------------------------------------------------------- # Domain Authentication # #domain admin group = onv7 onv8svc domain logons = yes encrypt passwords = yes security = user null passwords = yes logon drive = z: logon home = \\%L\%U logon path = \\%L\profiles\%U # ------------------------------------------------------------- # MS-DFS # host msdfs = yes # ------------------------------------------------------------- # Share Defaults # # -- General -- comment = OpusNet %T dont descend = /proc,/dev,/devices,/kernel,/etc,lost+found,/sbin,/bin # invalid users = root guest @noaccess writeable = yes # -- Visual C++ recommended -- # dos filetime resolution = true # fake directory create times = true # -- File Permissions -- create mask = 0771 map hidden = yes map system = yes # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # # Here are the shares ......... # # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [homes] comment = Home Drive of %U volume = HomeDrive valid users = %S browseable = no [profiles] comment = User Profiles path = /var/local/samba/profile2k volume = Profile writeable = yes browseable = no profile acls = yes root preexec = PROFILE=/var/local/samba/profile2k/%u; if [ ! -e $PROFILE ]; \ then mkdir -pm700 $PROFILE; chown %u:%g $PROFILE; fi [netlogon] comment = Default Logon Share path = /var/local/samba/netlogon guest ok = yes volume = LogonShare writeable = no write list = grmer0 force create mode = 0004 force directory mode = 0005 [print$] comment = Printer Drivers path = /var/local/samba/printerdrivers browseable = yes guest ok = no read only = yes force create mode = 0664 force directory mode = 2775 write list = printadm [printers] comment = Printer Queue path = /tmp printable = yes guest ok = yes # ------------------------------------------------------------------------ [branchapp] comment = Branch Applications path = /office/branchapp create mask = 0777 directory mask = 0777 force create mode = 0666 force directory mode = 0777 [branchlib] comment = Branch Libraries path = /office/branchlib create mask = 0777 directory mask = 0777 force create mode = 0666 force directory mode = 0777 [branchlog] comment = Hidden Branch Logs path = /office/branchlog browseable = no create mask = 0755 directory mask = 0755 force create mode = 0660 force directory mode = 0770 force user = onv7 #[driver$] # comment = Driver Files # path = /office/branchlib/onv6/drivers # volume = Drivers # guest ok = yes # writeable = no [groupapp] comment = Group Applications path = /home/%h/%g/groupapp create mask = 0771 directory mask = 0770 force create mode = 0660 force directory mode = 02770 [grouplib] comment = Group Libraries path = /home/%h/%g/grouplib create mask = 0771 directory mask = 0770 force create mode = 0660 force directory mode = 02770 [userapp] comment = User %u Applications path = /home/%h/%g/%u/userapp create mask = 0711 directory mask = 0700 follow symlinks = false [userlib] comment = User %u Libraries path = /home/%h/%g/%u/userlib create mask = 0711 directory mask = 0700 follow symlinks = false # These are some fake Administrative shares: #[admin$] # comment = Administrative Files # path = /var/local/samba/NTDefaults/Windows # volume = Admin # writeable = no # #[c$] # comment = C: Drive # path = /var/local/samba/NTDefaults # volume = C Drive # writeable = no # The archive system spool [archive$] comment = Archive Spool path = /home/records/archiveV3 volume = ArchiveSpool admin users = @bola valid users = @bola writeable = no # The AutoCAD drawing online archive spool [drawings] comment = AutoCAD drawings online archive path = /home/records/drawings volume = AutoCADspool create mask = 0775 directory mask = 0775 force create mode = 0664 force directory mode = 0775 write list = @drawings writeable = no [build$] comment = Build Files path = /office/branchlib/onv6/build volume = Build read list = @gr_comp onv6 write list = @gr_comp onv6 writeable = no [build7$] comment = Build7 Files path = /office/branchlib/onv7/build volume = Build7 read list = @gr_comp onv7 write list = @gr_comp onv7 writeable = no [tftpboot$] browseable = no comment = TFTP file repository force create mode = 0666 force directory mode = 0777 force group = +gr_comp path = /tftpboot volume = TFTP admin users = grbmh0 grmer0 grdlm0 grkdt0 grpjw0 # Hidden share used on the Linux servers to write a rescue CDROM [mkcdrec] comment = Disaster Recovery CDROM ISO Images path = /var/local/mkcdrec/ISOs browseable = no read list = @bola write list = @bola admin users = @bola # Used for PXE booting based PC installations [REMINST] path = /tftpboot/ris browsable = true read only = No guest ok = Yes # Opuslib - msdfs root share [Opuslib] path = /office/dfs msdfs root = yes include = /opt/samba/etc/groups.conf include = /opt/samba/etc/extra.conf I have googled for similar problems , the only (apparently) close hit I got did not give a fix but said that the problem went away when they upgraded to a 2.6 kernel. This upgrade would involve us in alot of work and we do not want to make this step at this point if we don't have to. Are you aware of any oplock issues resolved in 2.6.
This is the key info : 2005/06/13 09:14:31, 0] tdb/tdbutil.c:tdb_log(725) tdb(/var/local/samba/locks/locking.tdb): tdb_lock failed on list 55 ltype=1 (Resource deadlock avoided) This is something we've fixed in the current SVN code. It was a bug to do with deferred opens. You can fix the problem with a configure option : defer sharing violations = no for now. The real fix is already in the SVN code and will be in the next release. Let me know if you're comfortable patching the code itself and I'll attach the patch to this bug entry. Jeremy.
closing