Skip to contentSkip to conversation

Fix reversed logic in drivers/md/md.c

PATCH In review Eddie Kovsky 2 participants 2 messages May 26, 2015 MD RAID

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Fix reversed logic in drivers/md/md.c

Fixes the following compiler warning in next-20150525 using gcc 5.1.0:

drivers/md/md.c: In function ‘update_array_info’:
drivers/md/md.c:6394:26: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]

      !mddev->persistent  != info->not_persistent||
---
 drivers/md/md.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/md/md.c +1 -1
index eb27b2a74492..b0f98b5b8985 100644
@@ -6391,7 +6391,7 @@ static int update_array_info(struct mddev *mddev, mdu_array_info_t *info)
 	    mddev->ctime         != info->ctime         ||
 	    mddev->level         != info->level         ||
 /*	    mddev->layout        != info->layout        || */
-	    !mddev->persistent	 != info->not_persistent||
+	    mddev->persistent	 == info->not_persistent||
 	    mddev->chunk_sectors != info->chunk_size >> 9 ||
 	    /* ignore bottom 8 bits of state, and allow SB_BITMAP_PRESENT to change */
 	    ((state^info->state) & 0xfffffe00)
Signature · 6 lines
2.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#1 lore raw
Quoted 17 lines · On Mon, 25 May 2015 22:36:24 -0600 Eddie Kovsky <[email protected]> wrote:

Fixes the following compiler warning in next-20150525 using gcc 5.1.0:

drivers/md/md.c: In function ‘update_array_info’:
drivers/md/md.c:6394:26: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]

      !mddev->persistent  != info->not_persistent||
---
 drivers/md/md.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/md/md.c +0 -0
index eb27b2a74492..b0f98b5b8985 100644

drivers/md/md.c static int update_array_info(struct mddev *mddev, mdu_array_info_t *info) · line 6397

Quoted 8 lines
drivers/md/md.c +1 -1
@@ -6391,7 +6391,7 @@ static int update_array_info(struct mddev *mddev, mdu_array_info_t *info)
 	    mddev->ctime         != info->ctime         ||
 	    mddev->level         != info->level         ||
 /*	    mddev->layout        != info->layout        || */
-	    !mddev->persistent	 != info->not_persistent||
+	    mddev->persistent	 == info->not_persistent||
 	    mddev->chunk_sectors != info->chunk_size >> 9 ||
 	    /* ignore bottom 8 bits of state, and allow SB_BITMAP_PRESENT to change */
 	    ((state^info->state) & 0xfffffe00)

Thanks... but I'd rather gcc was fixed. :-( There is nothing wrong with the code and it does not deserve a warning.

I really like the column of "!=" and I don't want to change that.

I *might* be able to access

    (!mddev->persistent)   !=  info->not_persistent

Thanks,
NeilBrown