diff options
author | Jack Wang <jinpu.wang@profitbricks.com> | 2018-10-08 11:24:03 -0400 |
---|---|---|
committer | Shaohua Li <shli@fb.com> | 2018-10-10 14:03:34 -0400 |
commit | f8f83d8ffeb47041ff0937ecac6d10bcb388cd9f (patch) | |
tree | 788efa9231794db0718915c578fa63141b182513 /drivers/md | |
parent | 116d99adf59314924adae0cb691e4d289b5f2407 (diff) |
md/bitmap: use mddev_suspend/resume instead of ->quiesce()
After 9e1cc0a54556 ("md: use mddev_suspend/resume instead of ->quiesce()")
We still have similar left in bitmap functions.
Replace quiesce() with mddev_suspend/resume.
Also move md_bitmap_create out of mddev_suspend. and move mddev_resume
after md_bitmap_destroy. as we did in set_bitmap_file.
Signed-off-by: Jack Wang <jinpu.wang@profitbricks.com>
Reviewed-by: Gioh Kim <gi-oh.kim@profitbricks.com>
Signed-off-by: Shaohua Li <shli@fb.com>
Diffstat (limited to 'drivers/md')
-rw-r--r-- | drivers/md/md-bitmap.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/md/md-bitmap.c b/drivers/md/md-bitmap.c index 2fc8c113977f..1cd4f991792c 100644 --- a/drivers/md/md-bitmap.c +++ b/drivers/md/md-bitmap.c | |||
@@ -2288,9 +2288,9 @@ location_store(struct mddev *mddev, const char *buf, size_t len) | |||
2288 | goto out; | 2288 | goto out; |
2289 | } | 2289 | } |
2290 | if (mddev->pers) { | 2290 | if (mddev->pers) { |
2291 | mddev->pers->quiesce(mddev, 1); | 2291 | mddev_suspend(mddev); |
2292 | md_bitmap_destroy(mddev); | 2292 | md_bitmap_destroy(mddev); |
2293 | mddev->pers->quiesce(mddev, 0); | 2293 | mddev_resume(mddev); |
2294 | } | 2294 | } |
2295 | mddev->bitmap_info.offset = 0; | 2295 | mddev->bitmap_info.offset = 0; |
2296 | if (mddev->bitmap_info.file) { | 2296 | if (mddev->bitmap_info.file) { |
@@ -2327,8 +2327,8 @@ location_store(struct mddev *mddev, const char *buf, size_t len) | |||
2327 | mddev->bitmap_info.offset = offset; | 2327 | mddev->bitmap_info.offset = offset; |
2328 | if (mddev->pers) { | 2328 | if (mddev->pers) { |
2329 | struct bitmap *bitmap; | 2329 | struct bitmap *bitmap; |
2330 | mddev->pers->quiesce(mddev, 1); | ||
2331 | bitmap = md_bitmap_create(mddev, -1); | 2330 | bitmap = md_bitmap_create(mddev, -1); |
2331 | mddev_suspend(mddev); | ||
2332 | if (IS_ERR(bitmap)) | 2332 | if (IS_ERR(bitmap)) |
2333 | rv = PTR_ERR(bitmap); | 2333 | rv = PTR_ERR(bitmap); |
2334 | else { | 2334 | else { |
@@ -2337,11 +2337,12 @@ location_store(struct mddev *mddev, const char *buf, size_t len) | |||
2337 | if (rv) | 2337 | if (rv) |
2338 | mddev->bitmap_info.offset = 0; | 2338 | mddev->bitmap_info.offset = 0; |
2339 | } | 2339 | } |
2340 | mddev->pers->quiesce(mddev, 0); | ||
2341 | if (rv) { | 2340 | if (rv) { |
2342 | md_bitmap_destroy(mddev); | 2341 | md_bitmap_destroy(mddev); |
2342 | mddev_resume(mddev); | ||
2343 | goto out; | 2343 | goto out; |
2344 | } | 2344 | } |
2345 | mddev_resume(mddev); | ||
2345 | } | 2346 | } |
2346 | } | 2347 | } |
2347 | } | 2348 | } |