level2 kernel oplocks?

Tim Prouty tprouty at samba.org
Fri Apr 3 21:36:30 GMT 2009


On Apr 3, 2009, at 12:15 PM, Steven Danneman wrote:

> 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.

To expand on that, there are actually a few more ways that a level 2  
oplock can be contended:

enum level2_contention_type {
	LEVEL2_CONTEND_ALLOC_SHRINK,
	LEVEL2_CONTEND_ALLOC_GROW,
	LEVEL2_CONTEND_SET_FILE_LEN,
	LEVEL2_CONTEND_FILL_SPARSE,
	LEVEL2_CONTEND_WRITE,
	LEVEL2_CONTEND_WINDOWS_BRL,
	LEVEL2_CONTEND_POSIX_BRL
};


More information about the samba-technical mailing list