diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c index c3de0da62658..b3655e391e27 100644 --- a/drivers/md/raid0.c +++ b/drivers/md/raid0.c @@ -366,18 +366,13 @@ static sector_t raid0_size(struct mddev *mddev, sector_t sectors, int raid_disks return array_sectors; } -static void free_conf(struct mddev *mddev, struct r0conf *conf) -{ - kfree(conf->strip_zone); - kfree(conf->devlist); - kfree(conf); -} - static void raid0_free(struct mddev *mddev, void *priv) { struct r0conf *conf = priv; - free_conf(mddev, conf); + kfree(conf->strip_zone); + kfree(conf->devlist); + kfree(conf); } static int raid0_run(struct mddev *mddev) @@ -425,11 +420,7 @@ static int raid0_run(struct mddev *mddev) dump_zones(mddev); - ret = md_integrity_register(mddev); - if (ret) - free_conf(mddev, conf); - - return ret; + return md_integrity_register(mddev); } /*