Skip to content

Commit

Permalink
md/raid1: fix error: ISO C90 forbids mixed declarations
Browse files Browse the repository at this point in the history
[ Upstream commit df203da ]

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: 8b0472b ("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>
  • Loading branch information
ncroxon authored and gregkh committed Sep 23, 2023
1 parent afd0454 commit 2bf1bdc
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions drivers/md/raid1.c
Expand Up @@ -1829,12 +1829,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;

Expand Down

0 comments on commit 2bf1bdc

Please sign in to comment.