From: Markus Elfring <elfr...@users.sourceforge.net>
Date: Tue, 4 Oct 2016 22:44:59 +0200

* Return directly after a call of the function "kzalloc" failed
  at the beginning.

* Delete a repeated check for the local variable "conf"
  which became unnecessary with this refactoring.

Signed-off-by: Markus Elfring <elfr...@users.sourceforge.net>
---
 drivers/md/raid5.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
index 562138f..17f50a6 100644
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@ -6482,8 +6482,8 @@ static struct r5conf *setup_conf(struct mddev *mddev)
        }
 
        conf = kzalloc(sizeof(*conf), GFP_KERNEL);
-       if (conf == NULL)
-               goto abort;
+       if (!conf)
+               return ERR_PTR(-ENOMEM);
        /* Don't enable multi-threading by default*/
        if (!alloc_thread_groups(conf, 0, &group_cnt, &worker_cnt_per_group,
                                 &new_group)) {
@@ -6646,11 +6646,8 @@ static struct r5conf *setup_conf(struct mddev *mddev)
        return conf;
 
  abort:
-       if (conf) {
-               free_conf(conf);
-               return ERR_PTR(-EIO);
-       } else
-               return ERR_PTR(-ENOMEM);
+       free_conf(conf);
+       return ERR_PTR(-EIO);
 }
 
 static int only_parity(int raid_disk, int algo, int raid_disks, int 
max_degraded)
-- 
2.10.1

Reply via email to