[Lustre-discuss] Extent Based Locking Implementation

Arifa Nisar a-nisar at u.northwestern.edu
Fri Nov 20 09:11:51 PST 2009


Hi,

 

I have a question regarding implementation of server-based extent locking at
Lustre. I have a situation where two processes are concurrently accessing
one I/O server for writing one stripe at a time. Both of the processes are
writing alternate stripes stored on that server. I want to understand how
extent based locking protocol will work in this situation? 

 

I understand first process will be given lock to all the stripes. What will
happen when second process sends a lock request? Will I/O server revoke all
the (unused/ un asked for) locks back from processes 0, or it will revoke
the locks to the required stripe(s) only?

 

Please explain if P0 and P1 requests locks to stripes S0 . S8 in this order.

 

P0    S0

P1    S1

P0    S2

P1    S3

P0    S4

P1    S5

P0    S6

P1    S7

P0    S8

 

 

Does algorithm remains same if number of processes increases beyond two?

 

Thanks,

Arifa.

 

                                                

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lustre.org/pipermail/lustre-discuss-lustre.org/attachments/20091120/fd8b4bd0/attachment.htm>


More information about the lustre-discuss mailing list