[Samba] linux_set_kernel_oplock: Refused oplock on file. F_SETLEASE semantic problem ?

Cedric Delfosse cedric.delfosse at linbox.com
Thu Jun 15 09:39:21 GMT 2006


(Samba 3.0.21c / kernel 2.4.27 / Debian Sarge)

Hello,

One of my user open a file (located on a SAMBA server) in its 
application, and when he tries to save it, he gets a "share violation" 
error. (other people have this problem too).
This error happens since I upgraded the SAMBA server from 3.0.14a to 
3.0.21c.

smbstatus for this file:

32613        DENY_WRITE 0x20089     RDONLY     NONE 
/home/user/J84400os-V8   Thu Jun 15 10:46:05 2006

Samba log when trying to save the file:

[2006/06/15 10:50:44, 2] smbd/open.c:open_file(350)
user1 opened file J84400os-V8 read=Yes write=No (numopen=12)
[2006/06/15 10:50:44, 3] smbd/oplock_linux.c:linux_set_kernel_oplock(161)
linux_set_kernel_oplock: Refused oplock on file J84400os-V8,
fd = 33, dev = b, inode = 2621998. (Resource temporarily unavailable)

Corresponding strace log:

open("J84400os-V8",O_RDONLY|O_LARGEFILE) = 27
time(NULL) = 1150361813
geteuid32() = 1043
write(29, "[2006/06/15 10:56:53, 2] smbd/op"..., 52) = 52
geteuid32() = 1043
write(29, " user1 opened file Repertoi"..., 162) = 162
fcntl64(27, F_SETSIG, 0x24) = 0
fcntl64(27, 0x400 /* F_??? */, 0x1) = -1 EAGAIN (Resource
temporarily unavailable)
time(NULL) = 1150361813
geteuid32() = 1043
write(29, "[2006/06/15 10:56:53, 3] smbd/op"..., 74) = 74
geteuid32() = 1043
write(29, " linux_set_kernel_oplock: Refus"..., 229) = 229

fnctl 0x400 op seems to be F_SETLEASE.

Is there a problem between the version of kernel I use and how SAMBA use 
F_SETLEASE ?
Is there a way to resolve this problem ? Should I recompile SAMBA with 
specific options to fix this problem ?

Best regards,

-- 
Cédric Delfosse                             Linbox / Free&ALter Soft
152, rue de Grigy - Technopole Metz                       57070 METZ
tél : 03 87 50 87 98                               http://linbox.com


More information about the samba mailing list