From: David Binder <david.bin...@unisys.com>

Adjusts goto labels to prevent attempts to free unallocated resources.

Signed-off-by: David Binder <david.bin...@unisys.com>
Signed-off-by: David Kershner <david.kersh...@unisys.com>
---
 drivers/staging/unisys/visornic/visornic_main.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/unisys/visornic/visornic_main.c 
b/drivers/staging/unisys/visornic/visornic_main.c
index 992543a..f556100 100644
--- a/drivers/staging/unisys/visornic/visornic_main.c
+++ b/drivers/staging/unisys/visornic/visornic_main.c
@@ -1796,7 +1796,7 @@ static int visornic_probe(struct visor_device *dev)
                                  sizeof(struct sk_buff *), GFP_KERNEL);
        if (!devdata->rcvbuf) {
                err = -ENOMEM;
-               goto cleanup_rcvbuf;
+               goto cleanup_netdev;
        }
 
        /* set the net_xmit outstanding threshold */
@@ -1817,12 +1817,12 @@ static int visornic_probe(struct visor_device *dev)
        devdata->cmdrsp_rcv = kmalloc(SIZEOF_CMDRSP, GFP_ATOMIC);
        if (!devdata->cmdrsp_rcv) {
                err = -ENOMEM;
-               goto cleanup_cmdrsp_rcv;
+               goto cleanup_rcvbuf;
        }
        devdata->xmit_cmdrsp = kmalloc(SIZEOF_CMDRSP, GFP_ATOMIC);
        if (!devdata->xmit_cmdrsp) {
                err = -ENOMEM;
-               goto cleanup_xmit_cmdrsp;
+               goto cleanup_cmdrsp_rcv;
        }
        INIT_WORK(&devdata->timeout_reset, visornic_timeout_reset);
        devdata->server_down = false;
-- 
1.9.1

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to