Messages in this thread Patch in this message | | | Subject | [PATCH 03/54] md/raid0: Move a variable assignment in create_strip_zones() | From | SF Markus Elfring <> | Date | Thu, 6 Oct 2016 10:54:48 +0200 |
| |
From: Markus Elfring <elfring@users.sourceforge.net> Date: Tue, 4 Oct 2016 12:02:29 +0200
One local variable was set to an error code before a concrete error situation was detected. Thus move the corresponding assignment into two if branches to indicate a memory allocation failure there.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> --- drivers/md/raid0.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c index 3c76451..71bd398 100644 --- a/drivers/md/raid0.c +++ b/drivers/md/raid0.c @@ -149,17 +149,21 @@ static int create_strip_zones(struct mddev *mddev, struct r0conf **private_conf) goto free_conf; } - err = -ENOMEM; conf->strip_zone = kcalloc(conf->nr_strip_zones, sizeof(*conf->strip_zone), GFP_KERNEL); - if (!conf->strip_zone) + if (!conf->strip_zone) { + err = -ENOMEM; goto free_conf; + } + conf->devlist = kcalloc(conf->nr_strip_zones * mddev->raid_disks, sizeof(*conf->devlist), GFP_KERNEL); - if (!conf->devlist) + if (!conf->devlist) { + err = -ENOMEM; goto free_zone; + } /* The first zone must contain all devices, so here we check that * there is a proper alignment of slots to devices and find them all -- 2.10.1
| |