[Samba] kernel oplocks in ctdb environment

Volker Lendecke Volker.Lendecke at SerNet.DE
Fri Apr 1 11:59:35 MDT 2011


On Fri, Apr 01, 2011 at 08:58:57AM +0100, Bob Cregan wrote:
> Hi
>         Can anyone advise me on "kernel oplocks" in a ctdb cluster.
> 
> I have a ctdb (GPFS is the parallel file system) setup that uses
> samba (3.5.8) for cifs and IBM CNFS for NFS. Reading the
> documentation on kernel oplocks it seems to me that I can export the
> same area via samba and NFS with "kernel oplocks = Yes" .
> 
> My logic is that IBM CNFS has shared NFS locking information held on
> the shared filesystem, and therefore the kernel on each member of
> the ctdb cluster will be aware of any NFS locks. Samba with "kernel
> oplocks = Yes" should then not provide opportunistic locking to a
> CIFS client that want to access a file that has an NFS lock (giving
> an I/O error to that client??).

The only point of kernel oplocks is to be informed if
someone else wants to open a file. We can then inform the
client to flush its cache and not cache future requests.
Intra-Samba this works in cooperation with GPFS. GPFS has a
special leases API that Samba can make use of with the gpfs
VFS module, so the theory is that oplocks should work
cross-protocol. I haven't run concrete tests in that area
for a while though, I'd need to do that again to be 100%
certain nothing broke.

Volker

-- 
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen


More information about the samba mailing list