aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md/md.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2009-08-17 20:35:26 -0400
committerNeilBrown <neilb@suse.de>2009-08-17 20:35:26 -0400
commit80ffb3cceaefa405f2ecd46d66500ed8d53efe74 (patch)
tree867d6ec951663255076ea42fab29a31eac4e51c0 /drivers/md/md.c
parent4d484a4a7a5126410eed5f8dd329a33f6eeed068 (diff)
Fix new incorrect error return from do_md_stop.
Recent commit c8c00a6915a2e3d10416e8bdd3138429beb96210 changed the exit paths in do_md_stop and was not quite careful enough. There is one path were 'err' now needs to be cleared but it isn't. So setting an array to readonly (with mdadm --readonly) will work, but will incorrectly report and error: ENXIO. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/md.c')
-rw-r--r--drivers/md/md.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index 103f2d33fa89..9dd872000cec 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -4364,6 +4364,7 @@ static int do_md_stop(mddev_t * mddev, int mode, int is_open)
4364 if (mode == 1) 4364 if (mode == 1)
4365 set_disk_ro(disk, 1); 4365 set_disk_ro(disk, 1);
4366 clear_bit(MD_RECOVERY_FROZEN, &mddev->recovery); 4366 clear_bit(MD_RECOVERY_FROZEN, &mddev->recovery);
4367 err = 0;
4367 } 4368 }
4368out: 4369out:
4369 mutex_unlock(&mddev->open_mutex); 4370 mutex_unlock(&mddev->open_mutex);