FCNTL on Solaris

David Collier-Brown davecb at canada.sun.com
Mon Apr 22 10:31:01 GMT 2002


David Collier-Brown wrote:

>         I haven't looked at the code, but if it uses F_SETLKW
>         you might want to do a trylock first, implemented via
>         F_GETLK or F_SETLK, as this would allow subsequent
>         processes to continue, knowing that someone's fixing
>         the tdb, and that they can access it later using the
>         normal locking regime.

	A disclaimer: that isn't the way to do case
	3, it's the way to NOT do case three and be
	able to execute in bounded time, instead.

	I reccomend it over case 3 **rather strongly**,
	as 3 goes nonlinear, and can be proved to
	fail (I just drew the dfa and it was evil!!!)

	The stock approach is also nonlinear, with a
	higher overhead, so I guess it's doubly evil.
	That other OSs don't bottleneck on it says
	good things about their kernel programmers.

--dave
-- 
David Collier-Brown,           | Always do right. This will gratify 
Performance & Engineering      | some people and astonish the rest.
Americas Customer Engineering, |                      -- Mark Twain
(905) 415-2849                 | davecb at canada.sun.com




More information about the samba-technical mailing list