On Wed, 4 Jul 2012 13:21:43 +0800 Shaohua Li <shli@xxxxxxxxxx> wrote: > Neil pointed out the bitmap write optimization in handle_stripe_clean_event() > is unnecessary, because the chance one stripe gets written twice in the mean > time is rare. We can always do a bitmap_startwrite when a write request is > added to a stripe and bitmap_endwrite after write request is done. Delete the > optimization. With it, we can delete some cases of device_lock. > > Signed-off-by: Shaohua Li <shli@xxxxxxxxxxxx> Thanks. I've applied all three of these. However... > @@ -2455,6 +2455,7 @@ handle_failed_stripe(struct r5conf *conf > s->to_write--; > bitmap_end = 1; > } > + spin_unlock_irq(&conf->device_lock); > > if (test_and_clear_bit(R5_Overlap, &sh->dev[i].flags)) > wake_up(&conf->wait_for_overlap); I moved that spin_unlock_irq a little bit further up. Thanks, NeilBrown
Attachment:
signature.asc
Description: PGP signature