aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/md')
-rw-r--r--drivers/md/md.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index 06dee51456e8..653d4dcbee23 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -2689,14 +2689,6 @@ static int do_md_stop(mddev_t * mddev, int ro)
2689 set_disk_ro(disk, 1); 2689 set_disk_ro(disk, 1);
2690 } 2690 }
2691 2691
2692 bitmap_destroy(mddev);
2693 if (mddev->bitmap_file) {
2694 atomic_set(&mddev->bitmap_file->f_dentry->d_inode->i_writecount, 1);
2695 fput(mddev->bitmap_file);
2696 mddev->bitmap_file = NULL;
2697 }
2698 mddev->bitmap_offset = 0;
2699
2700 /* 2692 /*
2701 * Free resources if final stop 2693 * Free resources if final stop
2702 */ 2694 */
@@ -2706,6 +2698,14 @@ static int do_md_stop(mddev_t * mddev, int ro)
2706 struct gendisk *disk; 2698 struct gendisk *disk;
2707 printk(KERN_INFO "md: %s stopped.\n", mdname(mddev)); 2699 printk(KERN_INFO "md: %s stopped.\n", mdname(mddev));
2708 2700
2701 bitmap_destroy(mddev);
2702 if (mddev->bitmap_file) {
2703 atomic_set(&mddev->bitmap_file->f_dentry->d_inode->i_writecount, 1);
2704 fput(mddev->bitmap_file);
2705 mddev->bitmap_file = NULL;
2706 }
2707 mddev->bitmap_offset = 0;
2708
2709 ITERATE_RDEV(mddev,rdev,tmp) 2709 ITERATE_RDEV(mddev,rdev,tmp)
2710 if (rdev->raid_disk >= 0) { 2710 if (rdev->raid_disk >= 0) {
2711 char nm[20]; 2711 char nm[20];