On Mon, Oct 24, 2011 at 05:35:01PM -0700, Jeremy Allison wrote:
> On Wed, Oct 19, 2011 at 11:33:32PM -0700, Philip Ong wrote:
> > I've narrowed this problem down to a patch that is applied in 2.6.36.3. I 
> > replaced file.c from 2.6.36.2 into 2.6.36.3 and Samba works fine. The 
> > problem is I'm not sure if Samba needs to be fixed or the kernel needs to 
> > be. Anyone know what the right action is? One thing I noticed was the 
> > invalid argument being sent in the debugging log.
> > 
> > "  linux_set_kernel_oplock: Refused oplock on file home/foo/open/test.cfg, 
> > fd = 33, file_id = 17:aa41ab:0. (Invalid argument)"
> > 
> > Any advice would help.
> > 
> > Thanks,
> > Phil
> > 
> > 
> > The commit 129a84de2347002f09721cda3155ccfd19fade40 (locks: fix F_GETLK
> > regression (failure to find conflicts)) fixed the posix_test_lock()
> > function by itself, however, its usage in NFS changed by the commit
> > 9d6a8c5c213e34c475e72b245a8eb709258e968c (locks: give posix_test_lock
> > same interface as ->lock) remained broken - subsequent NFS-specific
> > locking code received F_UNLCK instead of the user-specified lock type.
> > To fix the problem, fl->fl_type needs to be saved before the
> > posix_test_lock() call and restored if no local conflicts were reported.
> 
> Looking closer at the problem...
> 
> We simply call fcntl(fd, F_SETLEASE, leasetype) on a fd to
> get a kernel oplock on it.
> 
> int leasetype can be F_WRLCK or F_UNLCK (from Samba). This
> matches the fcntl F_SETLEASE documentation completely. There
> has been no change whatsoever in Samba in this regard.
> 
> So I'm definitely calling kernel regression bug on this one.

FYI. Can you help me by logging a bug with your Linux
vendor on this one so we can get this fixed please ?

Jeremy.
-- 
To unsubscribe from this list go to the following URL and read the
instructions:  https://lists.samba.org/mailman/options/samba

Reply via email to