Thread (2 messages) 2 messages, 2 authors, 2008-05-08

Re: [RFC][PATCH] md: avoid fullsync if a faulty member missed a dirty transition

From: Mike Snitzer <hidden>
Date: 2008-05-08 20:12:15
Also in: lkml

On Thu, May 8, 2008 at 2:13 AM, Neil Brown [off-list ref] wrote:
On Tuesday May 6, snitzer@gmail.com wrote:
 >
 > It looks like bitmap_update_sb()'s incrementing of events_cleared (on
 > behalf of the local member) could be racing with the fact that the NBD
 > member becomes faulty (whereby making the array degraded).  This
 > allows the events_cleared to reflect a clean->dirty transition last
 > occurred before the array became degraded.  My reasoning is: If it was
 > a clean->dirty transition the bitmap still has the associated dirty
 > bit set in the local member's bitmap, so using the bitmap to resync is
 > valid.
 >
 > thanks,
 > Mike

 Thanks for persisting.  I think I understand what is going on now.

 How about this patch?  It is similar to your, but instead of depending
 on the odd/even state of the event counter, it directly checks the
 clean/dirty state of the array.
Hi Neil,

Your revised patch works great and is obviously cleaner.

Thanks!

Tested-by: Mike Snitzer <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help