[AFS3-std] Re: byte-range file locking draft

Andrew Deason adeason@sinenomine.net
Thu, 6 May 2010 13:28:04 -0500


On Thu, 6 May 2010 13:46:05 -0400 (EDT)
"Matt W. Benjamin" <matt@linuxbox.com> wrote:

> http://www.ietf.org/id/draft-mbenjamin-afs-file-locking-01.txt

>> 2.3.1
>> [...]
>> A file server may revoke locks granted to any client, for any 
>> reason.

Hmm, what does a client do if a lock is revoked after an application
acquired a lock and is doing I/O? Not that I'm suggesting a change in
the draft, but I'm just wondering... The results don't seem happy.

>> 2.4.3 Lock Flags for Share Reservation
>> 
>> The following flag constants are defined for use in the Flags 
>> member of the AFSByteRangeLock structure and equivalently in the 
>> Flags argument of the SetByteRangeLock procedure, and 
>> specifcally, identify share reservations:

specifically

>>   Expiration
>>
>> AFSByteRangeLock instances may be regarded as a special-purpose 
>> callback. Instances persist until canceled, or until Expiration 
>> is reached.

Sorry to bring this up (again), but this doesn't define the units for
'Expiration'.

>> 2.6.3 UpgradeByteRangeLock

If two clients try to upgrade their locks simultaneously and they
specify AFSLock_Flag_Wait, does one of them return EDEADLK?

Also, what interfaces have atomic lock upgrades? I thought POSIX ones
didn't, but perhaps I'm remembering incorrectly... or are there Windows
ones that have this?

-- 
Andrew Deason
adeason@sinenomine.net