[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CVS update: MODIFIED: src ...
From: |
Larry Jones |
Subject: |
Re: CVS update: MODIFIED: src ... |
Date: |
Fri, 8 Nov 2002 16:07:45 -0500 (EST) |
Derek Robert Price writes:
>
> Seems to me an "I'm waiting to upgrade to a write lock" lock would work
> just as well. Such a lock could prevent the creation of any other locks
> and other readers waiting for an upgrade could release their read locks
> in preference of the first server with an "upgrade" lock.
>
> I haven't studied the problem though. Would that be any more efficient
> than what you did?
Probably not, and I don't think it can be made to work in the current
scheme anyway. The original problem was that it was start_recursion()
that read locked the directory but it was the call-back function that
wanted the write lock. In that architecture, the call-back function
can't release the read lock because it doesn't own it, and even if it
could, it wouldn't work because there's cached data in the RCS library
that could become invalid if you released the lock and there's no way to
flush that cached data.
-Larry Jones
Philistines. -- Calvin