[PATCH] raid1: fix error: ISO C90 forbids mixed declarations

From: Nigel Croxon
Date: Sat Sep 09 2023 - 07:54:10 EST


There is a compile error when this commit is added:
md: raid1: fix potential OOB in raid1_remove_disk()

drivers/md/raid1.c: In function 'raid1_remove_disk':
drivers/md/raid1.c:1844:9: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]
1844 |         struct raid1_info *p = conf->mirrors + number;
     |         ^~~~~~

That's because the new code was inserted before the struct.
The change is move the struct command above this commit.

Fixes: md: raid1: fix potential OOB in raid1_remove_disk()
commit 8b0472b50bcf

Signed-off-by: Nigel Croxon <ncroxon@xxxxxxxxxx>
---
 drivers/md/raid1.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
index a5453b126aab..4f1483bb708b 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
@@ -1846,11 +1846,11 @@ static int raid1_remove_disk(struct mddev *mddev, struct md_rdev *rdev)
     int err = 0;
     int number = rdev->raid_disk;

+    struct raid1_info *p = conf->mirrors + number;
+
     if (unlikely(number >= conf->raid_disks))
         goto abort;

-    struct raid1_info *p = conf->mirrors + number;
-
     if (rdev != p->rdev)
         p = conf->mirrors + conf->raid_disks + number;

--
2.31.1