diff options
author | NeilBrown <neilb@suse.de> | 2010-03-28 20:18:15 -0400 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2010-05-18 01:27:53 -0400 |
commit | b821eaa572fd737faaf6928ba046e571526c36c6 (patch) | |
tree | 0db462a3c7da3dbf42d28e2483a27d78839b4589 /drivers/md/md.c | |
parent | 49ce6cea85fb8d25ee59486c919406e9cecf1762 (diff) |
md: remove ->changed and related code.
We set ->changed to 1 and call check_disk_change at the end
of md_open so that bd_invalidated would be set and thus
partition rescan would happen appropriately.
Now that we call revalidate_disk directly, which sets bd_invalidates,
that indirection is no longer needed and can be removed.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/md.c')
-rw-r--r-- | drivers/md/md.c | 22 |
1 files changed, 1 insertions, 21 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c index 69f2a8e6ccdf..f2b30019b1cb 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -4501,7 +4501,6 @@ static int do_md_run(mddev_t * mddev) | |||
4501 | md_wakeup_thread(mddev->sync_thread); /* possibly kick off a reshape */ | 4501 | md_wakeup_thread(mddev->sync_thread); /* possibly kick off a reshape */ |
4502 | 4502 | ||
4503 | revalidate_disk(mddev->gendisk); | 4503 | revalidate_disk(mddev->gendisk); |
4504 | mddev->changed = 1; | ||
4505 | md_new_event(mddev); | 4504 | md_new_event(mddev); |
4506 | sysfs_notify_dirent(mddev->sysfs_state); | 4505 | sysfs_notify_dirent(mddev->sysfs_state); |
4507 | if (mddev->sysfs_action) | 4506 | if (mddev->sysfs_action) |
@@ -4620,7 +4619,7 @@ static int do_md_stop(mddev_t * mddev, int mode, int is_open) | |||
4620 | } | 4619 | } |
4621 | 4620 | ||
4622 | set_capacity(disk, 0); | 4621 | set_capacity(disk, 0); |
4623 | mddev->changed = 1; | 4622 | revalidate_disk(disk); |
4624 | 4623 | ||
4625 | if (mddev->ro) | 4624 | if (mddev->ro) |
4626 | mddev->ro = 0; | 4625 | mddev->ro = 0; |
@@ -4686,7 +4685,6 @@ out: | |||
4686 | mddev->sync_speed_min = mddev->sync_speed_max = 0; | 4685 | mddev->sync_speed_min = mddev->sync_speed_max = 0; |
4687 | mddev->recovery = 0; | 4686 | mddev->recovery = 0; |
4688 | mddev->in_sync = 0; | 4687 | mddev->in_sync = 0; |
4689 | mddev->changed = 0; | ||
4690 | mddev->degraded = 0; | 4688 | mddev->degraded = 0; |
4691 | mddev->barriers_work = 0; | 4689 | mddev->barriers_work = 0; |
4692 | mddev->safemode = 0; | 4690 | mddev->safemode = 0; |
@@ -5850,7 +5848,6 @@ static int md_open(struct block_device *bdev, fmode_t mode) | |||
5850 | atomic_inc(&mddev->openers); | 5848 | atomic_inc(&mddev->openers); |
5851 | mutex_unlock(&mddev->open_mutex); | 5849 | mutex_unlock(&mddev->open_mutex); |
5852 | 5850 | ||
5853 | check_disk_change(bdev); | ||
5854 | out: | 5851 | out: |
5855 | return err; | 5852 | return err; |
5856 | } | 5853 | } |
@@ -5865,21 +5862,6 @@ static int md_release(struct gendisk *disk, fmode_t mode) | |||
5865 | 5862 | ||
5866 | return 0; | 5863 | return 0; |
5867 | } | 5864 | } |
5868 | |||
5869 | static int md_media_changed(struct gendisk *disk) | ||
5870 | { | ||
5871 | mddev_t *mddev = disk->private_data; | ||
5872 | |||
5873 | return mddev->changed; | ||
5874 | } | ||
5875 | |||
5876 | static int md_revalidate(struct gendisk *disk) | ||
5877 | { | ||
5878 | mddev_t *mddev = disk->private_data; | ||
5879 | |||
5880 | mddev->changed = 0; | ||
5881 | return 0; | ||
5882 | } | ||
5883 | static const struct block_device_operations md_fops = | 5865 | static const struct block_device_operations md_fops = |
5884 | { | 5866 | { |
5885 | .owner = THIS_MODULE, | 5867 | .owner = THIS_MODULE, |
@@ -5890,8 +5872,6 @@ static const struct block_device_operations md_fops = | |||
5890 | .compat_ioctl = md_compat_ioctl, | 5872 | .compat_ioctl = md_compat_ioctl, |
5891 | #endif | 5873 | #endif |
5892 | .getgeo = md_getgeo, | 5874 | .getgeo = md_getgeo, |
5893 | .media_changed = md_media_changed, | ||
5894 | .revalidate_disk= md_revalidate, | ||
5895 | }; | 5875 | }; |
5896 | 5876 | ||
5897 | static int md_thread(void * arg) | 5877 | static int md_thread(void * arg) |