32/64bit locking problem with 2.2.2

Jeremy Allison jra at samba.org
Mon Nov 5 19:22:05 GMT 2001


On Mon, Nov 05, 2001 at 07:56:12PM +0100, Juergen Bock wrote:
> Hi there, 
> 
> I have a quite ugly problem with a Samba server. The server is 
> running Linux 2.4.13 and Samba 2.2.2. The NFS-client is running 
> Linux 2.4.5. The windows homedirs are on \\server\username, the 
> UNIX homedirs are NFS mounted by the server.
> So, whenever I access \\server\username this actually NFS-mounts 
> /nfs/client/home/username. I now have one client machine that 
> causes the following error:
> 
> [2001/11/05 19:17:56, 0] locking/posix.c:posix_fcntl_lock(669)
>   posix_fcntl_lock: WARNING: lock request at offset 2147483538, length 1 returned
> [2001/11/05 19:17:56, 0] locking/posix.c:posix_fcntl_lock(670)
>   an No locks available error. This can happen when using 64 bit lock offsets
> [2001/11/05 19:17:56, 0] locking/posix.c:posix_fcntl_lock(671)
>   on 32 bit NFS mounted file systems.
> [2001/11/05 19:17:56, 1] smbd/service.c:close_cnum(650)
> 
> When I access the user's homedirectory through the samba server, 
> the whole windows box hangs and gives stupid error messages. I 
> don't use oplocks.
> 
> Has anybody seen this problem? Is this Samba related or do you 
> suspect an NFS problem? I think I have not seen this problem 
> when the server ran kernel 2.4.3 and Samba 2.2.1a. 

Hmmm. This lock offset is 0x7FFFFF92, which is less than 31 bits,
so should be allowed onto the server. Samba will return a locking
error here.

The question is why is this valid lock offset (0x7FFFFF92,length 1)
generating an ENOLCK on the NFS server ?

Jeremy.




More information about the samba mailing list