Bug 2799 - PANIC: request_oplock_break: no fsp found for our own oplock
PANIC: request_oplock_break: no fsp found for our own oplock
Status: RESOLVED FIXED
Product: Samba 3.0
Classification: Unclassified
Component: File Services
3.0.14a
x86 Linux
: P3 major
: none
Assigned To: Samba Bugzilla Account
Samba QA Contact
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2005-06-14 14:56 UTC by Dave Mason
Modified: 2005-09-29 05:03 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dave Mason 2005-06-14 14:56:26 UTC
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.
Comment 1 Jeremy Allison 2005-06-14 15:16:17 UTC
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.

Comment 2 Gerald (Jerry) Carter 2005-09-29 05:03:51 UTC
closing