Oplock support for BSD?

John E. Malmberg malmberg at Encompasserve.org
Mon Jun 25 22:30:09 GMT 2001


On Mon, 25 Jun 2001, Christopher R. Hertel wrote:

> > 
> > On Fri, 15 Jun 2001, Christopher R. Hertel wrote:
> > 
> > > > On Tue, 12 Jun 2001, Ephi Dror wrote:
> > > > 
> > > > > Hi All,
> > > > >
> > > > > Does anyone know if there is a work in progress to support Oplock on
> > > > > any of the BSD based OSs (FreeBSD, OpenBSD, NetBSD, etc.) besides
> > > > > Linux and Irix.
> > > > 
> > > > No idea.  Does anyone have word on this?
> > > 
> > > What would be involved?  Is this a change to the filesystem?  I'm curious 
> > > to know what has to happen in the OS to make OpLocks happen.
> > 
> > The owner of the lock needs a way to be signaled to run a routine to
> > release the lock, and possibly negotiate a less blocking lock.
> > 
> > This capability is native in OpenVMS, and well documented for use with
> > out doing "kernel hacking".
> > 
> > I have not found any documentation to be used as a guide to implementing
> > a LINUX compatable version, and likely will have to resort to deciphering
> > the LINUX sources.
> 
> John,
> 
> I think Linux already has OpLock support.  The BSDs support a virtual 
> filesystem layer and that's where the it could be added for *BSD.

I was refering to implementing an API on OpenVMS where I could use
SAMBA and other LINUX source code that references Oplocks unmodified.

It is looking like the APIs that LINUX uses is becoming a defacto standard
to use as a reference.

While file systems and locks are used together, locks have many uses that
do not involve files at all.

For your virtual filesystem on BSD, I do not know if you can implement the
signaling mechanism and associated handler routine with out modifying the
kernal also.  If you must modify the kernel, why not implement the LINUX
API so that it will work on all file systems.

Does anything other than SAMBA use LINUX Oplocks?

-John
wb8tyw at qsl.network
Personal Opinion Only





More information about the samba-technical mailing list