Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Aug 1999 23:34:34 -0400
From:      Christopher Masto <chris@netmonger.net>
To:        Greg Lehey <grog@lemis.com>
Cc:        Chuck Robey <chuckr@picnic.mat.net>, Garance A Drosihn <drosih@rpi.edu>, "Daniel C. Sobral" <dcs@newsguy.com>, Poul-Henning Kamp <phk@critter.freebsd.dk>, Matthew Dillon <dillon@apollo.backplane.com>, FreeBSD Hackers <hackers@FreeBSD.ORG>, FreeBSD Committers <cvs-committers@FreeBSD.ORG>, Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
Subject:   Re: Mandatory locking?
Message-ID:  <19990823233434.C16133@netmonger.net>
In-Reply-To: <19990824125210.A83273@freebie.lemis.com>; from Greg Lehey on Tue, Aug 24, 1999 at 12:52:10PM %2B0930
References:  <19990823223645.A14001@netmonger.net> <Pine.BSF.4.10.9908232256550.49952-100000@picnic.mat.net> <19990823231130.A16133@netmonger.net> <19990824125210.A83273@freebie.lemis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 24, 1999 at 12:52:10PM +0930, Greg Lehey wrote:
> No, I think you're confusing opening and locking.  It's something like
> this:
> 
> User 1				User 2
> 
> open file			open file
> lock file			read file (blocks)
> diddle file
> unlock file
> 				read completes

How about a little timing difference?

User 1				User 2

                                open file
                                read file
open file
lock file (blocks?)
                                close file
lock returns                    open file (blocks)
diddle file
unlock file
                                scribble over User 1's changes


What I'm getting at is that if User 2 has to do something special
anyway, it might as well be using advisory locking.

> > That seems extremely dangerous, given all the time that such a thing
> > hasn't been around..
> 
> I've been using it for 22 years now.
> 
> > who knows how many scripts and programs will now be vulnerable to
> > hanging forever..
> 
> Why?  There is a danger, of course, that user 1 will lock the file and
> not unlock it.  That's a badly written program, so you stop it.  End
> of hang.

That's not what I meant.  It hasn't been on FreeBSD, so FreeBSD is not
designed to deal with it.  I mentioned a couple of examples.. if I
lock a bunch of files in my web space, does apache get a bunch of
children stuck forever?  Who knows what might get tripped up?
-- 
Christopher Masto         Senior Network Monkey      NetMonger Communications
chris@netmonger.net        info@netmonger.net        http://www.netmonger.net

Free yourself, free your machine, free the daemon -- http://www.freebsd.org/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990823233434.C16133>