diff options
author | NeilBrown <neilb@suse.de> | 2014-12-14 20:56:57 -0500 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2015-02-03 16:35:52 -0500 |
commit | 5aa61f427e4979be733e4847b9199ff9cc48a47e (patch) | |
tree | d3e4fa9418f1134085cd9deef0877e7762076266 /drivers/md/raid0.c | |
parent | 3be260cc18f850873cd32381158e28b0a9a391fd (diff) |
md: split detach operation out from ->stop.
Each md personality has a 'stop' operation which does two
things:
1/ it finalizes some aspects of the array to ensure nothing
is accessing the ->private data
2/ it frees the ->private data.
All the steps in '1' can apply to all arrays and so can be
performed in common code.
This is useful as in the case where we change the personality which
manages an array (in level_store()), it would be helpful to do
step 1 early, and step 2 later.
So split the 'step 1' functionality out into a new mddev_detach().
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/raid0.c')
-rw-r--r-- | drivers/md/raid0.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c index 3770c9675b17..01dfca94b663 100644 --- a/drivers/md/raid0.c +++ b/drivers/md/raid0.c | |||
@@ -477,7 +477,6 @@ static int raid0_stop(struct mddev *mddev) | |||
477 | { | 477 | { |
478 | struct r0conf *conf = mddev->private; | 478 | struct r0conf *conf = mddev->private; |
479 | 479 | ||
480 | blk_sync_queue(mddev->queue); /* the unplug fn references 'conf'*/ | ||
481 | kfree(conf->strip_zone); | 480 | kfree(conf->strip_zone); |
482 | kfree(conf->devlist); | 481 | kfree(conf->devlist); |
483 | kfree(conf); | 482 | kfree(conf); |