summaryrefslogtreecommitdiff
path: root/super1.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2013-05-21 15:37:20 +1000
committerNeilBrown <neilb@suse.de>2013-05-21 15:37:20 +1000
commit8772113ab2117a4644bc71b47f16fc91f9a6b283 (patch)
treedbf42889f7ea8a9b85b464ed1683f5a14c9f0c16 /super1.c
parenta88e119f6f483f6bc0fca7ae540881529fe29911 (diff)
Examine/super1: don't report "New Offset" when feature not set.
The "new_offset" field may be non-zero, but if the feature flag is not set, it should be ignored. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'super1.c')
-rw-r--r--super1.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/super1.c b/super1.c
index 89f441fc..08d94a32 100644
--- a/super1.c
+++ b/super1.c
@@ -327,7 +327,8 @@ static void examine_super1(struct supertype *st, char *homehost)
if (sb->data_offset)
printf(" Data Offset : %llu sectors\n",
(unsigned long long)__le64_to_cpu(sb->data_offset));
- if (sb->new_offset) {
+ if (sb->new_offset &&
+ (__le32_to_cpu(sb->feature_map) & MD_FEATURE_NEW_OFFSET)) {
unsigned long long offset = __le64_to_cpu(sb->data_offset);
offset += (signed)(int32_t)__le32_to_cpu(sb->new_offset);
printf(" New Offset : %llu sectors\n", offset);