level2 kernel oplocks?
Jeremy Allison
jra at samba.org
Fri Apr 3 19:30:43 GMT 2009
On Fri, Apr 03, 2009 at 12:15:54PM -0700, Steven Danneman wrote:
>
> > Hi!
> >
> > Attached find some initial work for supporting level2 kernel oplocks.
> >
> > One thing I'm stuck with now is the following:
> >
> > * smbd (process A) holds an exclusive lease
> >
> > * someone else (process B) tries to open the file
> >
> > * smbd (process A) gets a signal
> >
> > How does smbd find out if process B opened the file for r/w, so that
> > process A has to drop the lease completely, or if process B opened for
> > r/o, so that a downgrade would be sufficient??
> >
> > Volker
>
> Hey Volker,
>
> A Level II oplock is only contended by a write or byte-range lock
> request. In the case you described, where an open operation contended
> an existing client's Exclusive oplock, process A would downgrade its
> client to a Level II oplock. The access mask of the open request is
> ignored when deciding how to break oplocks.
Indeed - even internally we always go down to level2 from
exclusive no matter what the requestor is asking for.
Jeremy.
More information about the samba-technical
mailing list