[Samba] Exclusive oplock left by process

eric roseme eroseme at emonster.rose.hp.com
Fri Aug 27 21:48:06 GMT 2004


There are several things to look into:

1.  You updated from 2.0.7 to 3.0.5 (quite a jump!).  Samba 2.2 and 
newer use many more locks than 2.0.  Make sure that your kernel settings 
are correct.  See 
http://marc.theaimsgroup.com/?l=samba&m=109335467118507&w=2

2.  My versions of 3.0 actually default to "strict locking = yes".  Make 
sure that you have "strict locking = no" (do a testparm).

3.  I interpret your earlier message to mean that your Samba server is 
an NFS client, and you are sharing NFS mounts.  If your application is 
doing byte range locking (propagating locks over NFS) and strict locking 
over a WAN, it could be very slow.

4.  From your description, it appears that you start an application, 
then disconnect the share.  Look at the log file and make sure that the 
locks are being cleaned up prior to the disconnect and close.  It should 
say something like "posix_locking_close_file: file filename has no 
outstanding locks".

I understand that you want to focus on what changed in 3.0.5.  A lot has 
changed since 2.0.7, and it may take some troubleshooting to track it 
down.  You can install HP CIFS Server 2.2.10 and see if you encounter 
the same behavior.  If you do, then you can enter a Response Center call 
and have them troubleshoot it for you.

Eric Roseme
Hewlett-Packard


xiaoqin_qiu at agilent.com wrote:
> Hi Eric,
> 
> Thank you for your response. I made changes in smb.conf file to disable oplocks. And use default for blocking locks. Now the exlusive oplock left by process error is gone.
> 
> However, I am still experiencing the same problem that when people try to copy files from directories which were mounted through WAN or running some applications using files under these directories, the windows explorer/application kind of hang and became very slow.
> 
> And I saw some processes left running on samba server even after user already disconnected the samba shares from windows explorer. The command "smbstatus" shows the process left running still locks some files, such as:
> 
> 23933  DENY_NONE  0x20089     RDONLY     NONE             /disk1/samba/sr/cadence/cadence.log   Thu Aug 26 17:33:37 2004
> 
> My procedure to produce this problem is that: I removed locking.tdb file after I stopped samba server. Then I start samba server and connect from Windows machine to the share, then tried to click on the file which located in directory mounted through WAN, then run into super slow. Then I disconnected share once I got control of windows explore. But there was/were process(processes) left running on samba server owned by me and they still held locks.
> 
> In the meantime, the average round-trip ping time for 64 byte packets from the samba server to the NFS server through WAN is 15ms.
> 
> Is it some kind of bug or is there still some configurations that I can change to make it work?
> 
> Thank you very much for your help!
> 
> Xiaoqin Qiu
> IT Infrastructure Services Organization
> Agilent Technologies, Inc.
> xiaoqin_qiu at agilent.com
> 
> 
> -----Original Message-----
> From: eric roseme [mailto:eroseme at emonster.rose.hp.com]
> Sent: Thursday, August 26, 2004 9:04 AM
> To: xiaoqin_qiu at agilent.com
> Cc: samba at lists.samba.org
> Subject: Re: [Samba] Exclusive oplock left by process
> 
> 
> I don't think that "blocking locks" is your problem.
> 
> Jeremy just answered the question about releasing locks by clearing the 
> lock files (tdbs), although again, I don't think it will affect your 
> operation.  His reply is at:
> 
> http://marc.theaimsgroup.com/?l=samba&m=109270256108878&w=2
> 
> Eric Roseme
> Hewlett-Packard
> 
> xiaoqin_qiu at agilent.com wrote:
> 
>>Hi Eric,
>>
>>Thank you for your response. I will read the white paper that you wrote.
>>
>>I forgot to mention that in my smb.conf file for SAMBA 3.0.5, I have "blocking locks = no". Should I set this? Or should I use the default "blocking locks = yes"?
>>
>>I also curious about if it is safe to remove all files(including locking.tdb, brlok.tdb, etc.) under /var/.../locks directory after I stop samba server?
>>
>>I can see your point to disable oplocks, however, I am still wondering how this upgrade from 2.0.7 (nmbd -V showed 2.0.7, smbd -V showed 2.0.9, NOT 2.2.7) to 3.0.5 introduced oplock problem since we use the default settings for both versions of samba.
>>
>>Thank you very much for your help!
>>
>>Xiaoqin Qiu
>>IT Infrastructure Services Organization
>>Agilent Technologies, Inc.
>>xiaoqin_qiu at agilent.com
>>
>>
>>-----Original Message-----
>>From: eric roseme [mailto:eroseme at emonster.rose.hp.com]
>>Sent: Wednesday, August 25, 2004 3:46 PM
>>To: xiaoqin_qiu at agilent.com
>>Cc: samba at lists.samba.org
>>Subject: Re: [Samba] Exclusive oplock left by process
>>
>>
>>Hi Xiaoqin,
>>
>>It appears to me that "oplock break wait time = 0" is the default on 
>>both 2.2 (2.2.10 for me) and 3.0 (3.0.2a for me).
>>
>>Unless you have a good reason for using oplocks, I suggest turning them 
>>off altogether ("oplocks = no", "level2 oplocks = no" - so testparm does 
>>not complain that level2 is on when oplocks are off).  Also, if you have 
>>NFS users accessing the same files that are being oplocked, you could 
>>have some data integrity problems.
>>
>>You can look at a whitepaper I did about oplocks at:
>>
>>http://www.docs.hp.com/hpux/onlinedocs/4501/CIFS_Oplock_Guideline.pdf
>>
>>Eric Roseme
>>Hewlett-Packard
>>
>>xiaoqin_qiu at agilent.com wrote:
>>
>>
>>
>>>Hi all,
>>>
>>>We have a HP-UX 11i server running as a samba server. Users use Windows 2000 boxes with Service Pack 4 to connect to the samba server. Several days ago, we upgraded samba server from 2.0.7 to 3.0.5, and we started to experience the following problem:
>>>
>>>The general connection and access to the samba server is ok. However, under the samba share there have been some directories mounted from some other HP-UX 11i servers through WAN. When people try to copy files from these directories or running some applications using files under these directories, the windows explorer/application kind of hang and became very slow. But this type of tasks were successful using samba version 2.0.7. The problem only happened after the upgrade.
>>>
>>>I looked at the samba log file and found the following errors:
>>>
>>>[2004/08/24 18:07:51, 0] smbd/oplock.c:request_oplock_break(1023)
>>> request_oplock_break: no response received to oplock break request to pid 27458 on port 54926 for dev = 430016a8, inode = 3310429, file_id = 24
>>>[2004/08/24 18:07:51, 0] smbd/open.c:open_mode_check(680)
>>> open_mode_check: exlusive oplock left by process 27458 after break ! For file hped/sr/osclib_encode_def.atf, dev = 430016a8, inode = 3310429. Deleting it to continue...
>>>[2004/08/24 18:07:51, 0] smbd/open.c:open_mode_check(684)
>>> open_mode_check: Existent process 27458 left active oplock.
>>>
>>>Our WAN connection is pretty fast although it is a lot slower than LAN. And in the meantime, we had no problem accessing these directories using NFS.
>>>
>>>I read man pages and search the internet. Although there are sevel posts on the internet describing similar problem, I havn't found any solution. >From the man page, parameter "oplock break wait time" caught my eyes. We have been using default value for both 2.0.7 and 3.0.5. However, the default value for this parameter seems getting changed from "10" to "0" (if that was not a typo). And we use default values for all oplock related parameters.
>>>
>>>Can I change this paramter to 10? The man page kind of made me be afraid of change this value. Will this help? And any suggestion about our problem?
>>>
>>>Thank you very much for your help!
>>>
>>>Xiaoqin Qiu
>>>IT Infrastructure Services Organization
>>>Agilent Technologies, Inc.
>>>xiaoqin_qiu at agilent.com
> 
> 


More information about the samba mailing list