aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2014-07-01 21:35:06 -0400
committerNeilBrown <neilb@suse.de>2014-07-02 20:44:31 -0400
commit9bd359203210efeb5d8f0d81c155079f34b47449 (patch)
treea891e608abda2e5995b6064a3eb2dc1dd03df6a3
parent4c834452aad01531db949414f94f817a86348d59 (diff)
md: make sure GET_ARRAY_INFO ioctl reports correct "clean" status
If an array has a bitmap, the when we set the "has bitmap" flag we incorrectly clear the "is clean" flag. "is clean" isn't really important when a bitmap is present, but it is best to get it right anyway. Reported-by: George Duffield <forumscollective@gmail.com> Link: http://lkml.kernel.org/CAG__1a4MRV6gJL38XLAurtoSiD3rLBTmWpcS5HYvPpSfPR88UQ@mail.gmail.com Fixes: 36fa30636fb84b209210299684e1be66d9e58217 (v2.6.14) Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r--drivers/md/md.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index 34846856dbc6..817dbca6059e 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -5599,7 +5599,7 @@ static int get_array_info(struct mddev * mddev, void __user * arg)
5599 if (mddev->in_sync) 5599 if (mddev->in_sync)
5600 info.state = (1<<MD_SB_CLEAN); 5600 info.state = (1<<MD_SB_CLEAN);
5601 if (mddev->bitmap && mddev->bitmap_info.offset) 5601 if (mddev->bitmap && mddev->bitmap_info.offset)
5602 info.state = (1<<MD_SB_BITMAP_PRESENT); 5602 info.state |= (1<<MD_SB_BITMAP_PRESENT);
5603 info.active_disks = insync; 5603 info.active_disks = insync;
5604 info.working_disks = working; 5604 info.working_disks = working;
5605 info.failed_disks = failed; 5605 info.failed_disks = failed;