Remove the gotos when handling error conditions, as the code gets clearer
and the gotos are not really avoiding code replication.

Signed-off-by: Miguel Gómez <[email protected]>
---
 drivers/staging/ipack/bridges/tpci200.c |   19 +++++++------------
 1 file changed, 7 insertions(+), 12 deletions(-)

diff --git a/drivers/staging/ipack/bridges/tpci200.c 
b/drivers/staging/ipack/bridges/tpci200.c
index 29c91d6..51448c7 100644
--- a/drivers/staging/ipack/bridges/tpci200.c
+++ b/drivers/staging/ipack/bridges/tpci200.c
@@ -776,23 +776,18 @@ static int tpci200_install(struct tpci200_board *tpci200)
 
        tpci200->slots = kzalloc(
                TPCI200_NB_SLOT * sizeof(struct tpci200_slot), GFP_KERNEL);
-       if (tpci200->slots == NULL) {
-               res = -ENOMEM;
-               goto out_err;
-       }
+       if (tpci200->slots == NULL)
+               return -ENOMEM;
 
        res = tpci200_register(tpci200);
-       if (res)
-               goto out_free;
+       if (res) {
+               kfree(tpci200->slots);
+               tpci200->slots = NULL;
+               return res;
+       }
 
        mutex_init(&tpci200->mutex);
        return 0;
-
-out_free:
-       kfree(tpci200->slots);
-       tpci200->slots = NULL;
-out_err:
-       return res;
 }
 
 static int tpci200_pciprobe(struct pci_dev *pdev,
-- 
1.7.9.5

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to