[Linux-cluster] GFS

David Teigland teigland at redhat.com
Fri Oct 29 08:58:57 UTC 2004


On Fri, Oct 29, 2004 at 09:33:08AM +0100, Gradimir Starovic wrote:
> > On Fri, Oct 29, 2004 at 08:40:00AM +0100, Gradimir Starovic wrote:
> > > > Both flock() and fcntl() locks are cluster-wide on gfs.  
> > > > Since 2.6.9 no kernel patches are required.
> > > > 
> > > 
> > > Is fcntl() locking working for nfs over gfs now, or is server 
> > > still calling posix_lock_file w/o calling fs-specific lock()?
> > 
> > As far as I know, nfs only acquires locks in the vfs 
> > (posix_lock_file).
> > Do you know anyone who has begun work to add fs-specific calls?
> > 
> 
> I thought GFS had its gfs_lock file operation, but must say my knowledge
> of GFS is not great. The problem is, how can fcntl locking be cluster-wide, 
> for nfs on a cluster, if it's done only locally and the cluster fs is
> not even told about that. 

That may have been misleading -- I know very little about nfs's fcntl
locking and I may not understand your question either.  GFS does have a
gfs_lock file operation which makes flock/fcntl locks cluster-wide when
requested through flock() or fcntl() on gfs directly.

However, if the lock is requested on an nfs file (where nfs is above gfs),
that request isn't passed on to gfs AFAIK.  This means two nfs servers
sharing one gfs file system have independent (not-cluster-wide) views of
the locks.  So, I think the answer to your question is, fcntl locking is
not cluster wide when it's through nfs.

-- 
Dave Teigland  <teigland at redhat.com>




More information about the Linux-cluster mailing list