md/raid10: check for ERR_PTR returns from setup_conf()
Subsystems (2)
PATCH 1/1 md/raid10: check for ERR_PTR returns from setup_conf()
setup_conf() can return error values so I added a check for that here.
Signed-off-by Dan Carpenter <[email protected]>
drivers/md/raid10.c +2 -0
@@ -2454,6 +2454,8 @@ static void *raid10_takeover_raid0(mddev_t *mddev) mddev->recovery_cp = MaxSector; conf =setup_conf (mddev); +if (IS_ERR (conf)) +return conf; conf->scale_disks =2 ;return conf; }
Quoted 9 lines · Dan Carpenter
setup_conf()can return error values so I added a check for that here.Signed-off-by Dan Carpenter <[email protected]>drivers/md/raid10.c +0
-0
drivers/md/raid10.c static void *raid10_takeover_raid0(mddev_t *mddev) · line 2461
Quoted 8 lines
drivers/md/raid10.c +2
-0@@ -2454,6 +2454,8 @@ static void *raid10_takeover_raid0(mddev_t *mddev) mddev->recovery_cp = MaxSector; conf =setup_conf (mddev); +if (IS_ERR (conf)) +return conf; conf->scale_disks =2 ;return conf; }
Looks good. Feel free to add my Acked-By.
BTW: setup_conf() could use some cleanup: The "couldn't allocate memory" error message at the bottom is misleading, and the function returns ERR_PTR(-ENOMEM) also if md_register_thread() fails.
Here's a question for Neil: raid10_takeover_raid0() sets mddev->new_layout, but setup_conf() uses the old values of the raid0. How is this supposed to work?
Thanks
Andre
Signature · 1 line
The only person who always got his work done by Friday was Robinson Crusoe