Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.0:Staging:A
mdadm
0157-super1-only-set-clustered-flag-when-bitmap...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0157-super1-only-set-clustered-flag-when-bitmap-is-presen.patch of Package mdadm
From 6438c249c4fed92cf6e5fb492d19f4c4f516ff6f Mon Sep 17 00:00:00 2001 From: NeilBrown <neilb@suse.com> Date: Fri, 4 Aug 2017 15:30:02 +1000 Subject: [PATCH] super1: only set clustered flag when bitmap is present Git-commit: 6438c249c4fed92cf6e5fb492d19f4c4f516ff6f Patch-mainline: mdadm-4.0+ References: bsc#1069165, bsc#1069167, bsc#1068030 If no bitmap is present, then the test if (__le32_to_cpu(bsb->nodes) > 1) accesses uninitialised memory. So move that test inside a test for a bitmap being present. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> Signed-off-by: Coly Li <colyli@suse.de> --- super1.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/super1.c b/super1.c index b15a1c7..f6a1045 100644 --- a/super1.c +++ b/super1.c @@ -977,14 +977,14 @@ static void getinfo_super1(struct supertype *st, struct mdinfo *info, char *map) info->array.chunk_size = __le32_to_cpu(sb->chunksize)*512; info->array.state = (__le64_to_cpu(sb->resync_offset) == MaxSector) ? 1 : 0; - if (__le32_to_cpu(bsb->nodes) > 1) - info->array.state |= (1 << MD_SB_CLUSTERED); super_offset = __le64_to_cpu(sb->super_offset); info->data_offset = __le64_to_cpu(sb->data_offset); info->component_size = __le64_to_cpu(sb->size); if (sb->feature_map & __le32_to_cpu(MD_FEATURE_BITMAP_OFFSET)) { info->bitmap_offset = (int32_t)__le32_to_cpu(sb->bitmap_offset); + if (__le32_to_cpu(bsb->nodes) > 1) + info->array.state |= (1 << MD_SB_CLUSTERED); } else if (sb->feature_map & __le32_to_cpu(MD_FEATURE_PPL)) { info->ppl_offset = __le16_to_cpu(sb->ppl.offset); info->ppl_size = __le16_to_cpu(sb->ppl.size); -- 2.13.6
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor