From: NeilBrown Date: Fri, 7 Oct 2016 03:55:20 +0000 (+1100) Subject: Fix some issues found by clang X-Git-Tag: mdadm-4.0~49 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=681b7ae245db80b24d45abdc3f5040c796aa29cc;p=thirdparty%2Fmdadm.git Fix some issues found by clang The clang compiler complained about each of these. The mdmon.h error will only affect 'far' RAID10 arrays using intel or DDF metadata, and there is no such thing. The mdopen.c will cause a problem if there are no free md device numbers in the first 512. That is fairly unlikely. The restripe.c error would only affect the 'test_stripe' command, and probably doesn't change its behaviour. The super-intel.c fix is purely cosmetic. Signed-off-by: NeilBrown Signed-off-by: Jes Sorensen --- diff --git a/mdmon.h b/mdmon.h index aa750c68..0b08c3d7 100644 --- a/mdmon.h +++ b/mdmon.h @@ -101,7 +101,7 @@ static inline int is_resync_complete(struct mdinfo *array) break; case 10: l = array->array.layout; - ncopies = (l & 0xff) * ((l >> 8) && 0xff); + ncopies = (l & 0xff) * ((l >> 8) & 0xff); sync_size = array->component_size * array->array.raid_disks; sync_size /= ncopies; break; diff --git a/mdopen.c b/mdopen.c index 5af344b9..0ea38749 100644 --- a/mdopen.c +++ b/mdopen.c @@ -318,7 +318,7 @@ int create_mddev(char *dev, char *name, int autof, int trustworthy, else if (num < 0) { /* need to choose a free number. */ char *_devnm = find_free_devnm(use_mdp); - if (devnm == NULL) { + if (_devnm == NULL) { pr_err("No avail md devices - aborting\n"); return -1; } diff --git a/restripe.c b/restripe.c index 359ae86e..de85ee46 100644 --- a/restripe.c +++ b/restripe.c @@ -482,7 +482,7 @@ int raid6_check_disks(int data_disks, int start, int chunk_size, } if((Px == 0) && (Qx == 0)) - curr_broken_disk = curr_broken_disk; + curr_broken_disk = prev_broken_disk; if(curr_broken_disk >= data_disks + 2) broken_status = 2; diff --git a/super-intel.c b/super-intel.c index 1304737f..e1124ba5 100644 --- a/super-intel.c +++ b/super-intel.c @@ -10154,7 +10154,7 @@ enum imsm_reshape_type imsm_analyze_change(struct supertype *st, geo->size = max_size; } - if ((direction == ROLLBACK_METADATA_CHANGES)) { + if (direction == ROLLBACK_METADATA_CHANGES) { /* accept size for rollback only */ } else {