Commit 034e33f5 authored by Shaohua Li's avatar Shaohua Li

md: stop write should stop journal reclaim

__md_stop_writes currently doesn't stop raid5-cache reclaim thread. It's
possible the reclaim thread is still running and doing write, which
doesn't match what __md_stop_writes should do. The extra ->quiesce()
call should not harm any raid types. For raid5-cache, this will
guarantee we reclaim all caches before we update superblock.
Signed-off-by: default avatarShaohua Li <shli@fb.com>
Reviewed-by: default avatarNeilBrown <neilb@suse.de>
Cc: Song Liu <songliubraving@fb.com>
parent ce1ccd07
...@@ -5517,6 +5517,10 @@ static void __md_stop_writes(struct mddev *mddev) ...@@ -5517,6 +5517,10 @@ static void __md_stop_writes(struct mddev *mddev)
del_timer_sync(&mddev->safemode_timer); del_timer_sync(&mddev->safemode_timer);
if (mddev->pers && mddev->pers->quiesce) {
mddev->pers->quiesce(mddev, 1);
mddev->pers->quiesce(mddev, 0);
}
bitmap_flush(mddev); bitmap_flush(mddev);
if (mddev->ro == 0 && if (mddev->ro == 0 &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment