2019-09-02 12:40:15

by Robert Richter

[permalink] [raw]
Subject: [PATCH 3/5] EDAC, mc_sysfs: Remove pointless gotos

Use direct returns instead of gotos. Error handling code becomes
smaller and better readable.

Signed-off-by: Robert Richter <[email protected]>
---
drivers/edac/edac_mc_sysfs.c | 20 +++++++-------------
1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/drivers/edac/edac_mc_sysfs.c b/drivers/edac/edac_mc_sysfs.c
index 4eb8c5ceb973..309fc24339b0 100644
--- a/drivers/edac/edac_mc_sysfs.c
+++ b/drivers/edac/edac_mc_sysfs.c
@@ -938,7 +938,7 @@ int edac_create_sysfs_mci_device(struct mem_ctl_info *mci,
if (err < 0) {
edac_dbg(1, "failure: create device %s\n", dev_name(&mci->dev));
put_device(&mci->dev);
- goto out;
+ return err;
}

/*
@@ -987,7 +987,6 @@ int edac_create_sysfs_mci_device(struct mem_ctl_info *mci,
}
device_unregister(&mci->dev);

-out:
return err;
}

@@ -1044,10 +1043,8 @@ int __init edac_mc_sysfs_init(void)
int err;

mci_pdev = kzalloc(sizeof(*mci_pdev), GFP_KERNEL);
- if (!mci_pdev) {
- err = -ENOMEM;
- goto out;
- }
+ if (!mci_pdev)
+ return -ENOMEM;

mci_pdev->bus = edac_get_sysfs_subsys();
mci_pdev->type = &mc_attr_type;
@@ -1055,17 +1052,14 @@ int __init edac_mc_sysfs_init(void)
dev_set_name(mci_pdev, "mc");

err = device_add(mci_pdev);
- if (err < 0)
- goto out_put_device;
+ if (err < 0) {
+ put_device(mci_pdev);
+ return err;
+ }

edac_dbg(0, "device %s created\n", dev_name(mci_pdev));

return 0;
-
- out_put_device:
- put_device(mci_pdev);
- out:
- return err;
}

void edac_mc_sysfs_exit(void)
--
2.20.1