Loading drivers/md/raid1.c +4 −0 Original line number Diff line number Diff line Loading @@ -809,11 +809,15 @@ static void flush_pending_writes(struct r1conf *conf) spin_lock_irq(&conf->device_lock); if (conf->pending_bio_list.head) { struct blk_plug plug; struct bio *bio; bio = bio_list_get(&conf->pending_bio_list); conf->pending_count = 0; spin_unlock_irq(&conf->device_lock); blk_start_plug(&plug); flush_bio_list(conf, bio); blk_finish_plug(&plug); } else spin_unlock_irq(&conf->device_lock); } Loading drivers/md/raid10.c +4 −0 Original line number Diff line number Diff line Loading @@ -894,10 +894,13 @@ static void flush_pending_writes(struct r10conf *conf) spin_lock_irq(&conf->device_lock); if (conf->pending_bio_list.head) { struct blk_plug plug; struct bio *bio; bio = bio_list_get(&conf->pending_bio_list); conf->pending_count = 0; spin_unlock_irq(&conf->device_lock); blk_start_plug(&plug); /* flush any pending bitmap writes to disk * before proceeding w/ I/O */ bitmap_unplug(conf->mddev->bitmap); Loading @@ -918,6 +921,7 @@ static void flush_pending_writes(struct r10conf *conf) generic_make_request(bio); bio = next; } blk_finish_plug(&plug); } else spin_unlock_irq(&conf->device_lock); } Loading Loading
drivers/md/raid1.c +4 −0 Original line number Diff line number Diff line Loading @@ -809,11 +809,15 @@ static void flush_pending_writes(struct r1conf *conf) spin_lock_irq(&conf->device_lock); if (conf->pending_bio_list.head) { struct blk_plug plug; struct bio *bio; bio = bio_list_get(&conf->pending_bio_list); conf->pending_count = 0; spin_unlock_irq(&conf->device_lock); blk_start_plug(&plug); flush_bio_list(conf, bio); blk_finish_plug(&plug); } else spin_unlock_irq(&conf->device_lock); } Loading
drivers/md/raid10.c +4 −0 Original line number Diff line number Diff line Loading @@ -894,10 +894,13 @@ static void flush_pending_writes(struct r10conf *conf) spin_lock_irq(&conf->device_lock); if (conf->pending_bio_list.head) { struct blk_plug plug; struct bio *bio; bio = bio_list_get(&conf->pending_bio_list); conf->pending_count = 0; spin_unlock_irq(&conf->device_lock); blk_start_plug(&plug); /* flush any pending bitmap writes to disk * before proceeding w/ I/O */ bitmap_unplug(conf->mddev->bitmap); Loading @@ -918,6 +921,7 @@ static void flush_pending_writes(struct r10conf *conf) generic_make_request(bio); bio = next; } blk_finish_plug(&plug); } else spin_unlock_irq(&conf->device_lock); } Loading