]> git.baikalelectronics.ru Git - kernel.git/commitdiff
md/raid1: fix error: ISO C90 forbids mixed declarations
authorNigel Croxon <ncroxon@redhat.com>
Mon, 11 Sep 2023 21:25:23 +0000 (14:25 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Sep 2023 09:11:09 +0000 (11:11 +0200)
[ Upstream commit df203da47f4428bc286fc99318936416253a321c ]

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: 8b0472b50bcf ("md: raid1: fix potential OOB in raid1_remove_disk()")
Signed-off-by: Nigel Croxon <ncroxon@redhat.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/46d929d0-2aab-4cf2-b2bf-338963e8ba5a@redhat.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/md/raid1.c

index 72303c62017476cccf947749673f8c8a06b90a6e..30f906a67def4c0c56d12df0e10e187ae48aaea0 100644 (file)
@@ -1826,12 +1826,11 @@ static int raid1_remove_disk(struct mddev *mddev, struct md_rdev *rdev)
        struct r1conf *conf = mddev->private;
        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;