aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2007-02-28 23:11:42 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-03-01 17:53:36 -0500
commitd1b5380c7f794da16e815c34e54ee7641db8a288 (patch)
tree1e9d7752c751898e236d3af695a5221be5634f1a
parent7dd5e7c3dbe8c4ffb507ddc0ea8fab07c8b11b0b (diff)
[PATCH] md: clean out unplug and other queue function on md shutdown
The mddev and queue might be used for another array which does not set these, so they need to be cleared. Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/md/md.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index c8c40c361532..b5744b1bd2ba 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -3322,6 +3322,9 @@ static int do_md_stop(mddev_t * mddev, int mode)
3322 set_disk_ro(disk, 0); 3322 set_disk_ro(disk, 0);
3323 blk_queue_make_request(mddev->queue, md_fail_request); 3323 blk_queue_make_request(mddev->queue, md_fail_request);
3324 mddev->pers->stop(mddev); 3324 mddev->pers->stop(mddev);
3325 mddev->queue->merge_bvec_fn = NULL;
3326 mddev->queue->unplug_fn = NULL;
3327 mddev->queue->issue_flush_fn = NULL;
3325 if (mddev->pers->sync_request) 3328 if (mddev->pers->sync_request)
3326 sysfs_remove_group(&mddev->kobj, &md_redundancy_group); 3329 sysfs_remove_group(&mddev->kobj, &md_redundancy_group);
3327 3330