[Lustre-devel] [RFC] parallel enqueue
Alex.Zhuravlev at Sun.COM
Tue Feb 12 03:09:40 PST 2008
well, the idea is to fallback to serialized enqueue once such
collision is detected: this allow to avoid livelock problem
and rpc storms.
Eric Barton wrote:
> This sounds great!
> But are there any livelock issues?
>> -----Original Message-----
>> From: lustre-devel-bounces at lists.lustre.org
>> [mailto:lustre-devel-bounces at lists.lustre.org] On Behalf Of
>> Alex Zhuravlev
>> Sent: 08 February 2008 3:32 PM
>> To: lustre-devel at lists.lustre.org
>> Subject: [Lustre-devel] [RFC] parallel enqueue
>> in some cases (truncate, append) we still use serialized enqueue
>> when all locks have to be enqueued synchronously one by one.
>> what if we could mark all locks issued by single client with some
>> unique tag (timestamp + nid?), then enqueue them all and then, in
>> case of conflict, in blocking ast handler compare tag of conflicting
>> lock with own tag, cancel our granted locks if our tag is greater
>> than tag of conflicting lock and enqueue them again?
>> thanks, Alex
>> Lustre-devel mailing list
>> Lustre-devel at lists.lustre.org
> Lustre-devel mailing list
> Lustre-devel at lists.lustre.org
More information about the lustre-devel