]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Platform: Fix error path in samsung-laptop init
authorDavid Herrmann <dh.herrmann@googlemail.com>
Tue, 20 Sep 2011 16:16:12 +0000 (09:16 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 11 Nov 2011 17:35:48 +0000 (09:35 -0800)
commit a7ea19926ffba86f373f6050a106cd162dbb9a78 upstream.

samsung_init() should not return success if not all devices are initialized.
Otherwise, samsung_exit() will dereference sdev NULL pointers and others.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
drivers/platform/x86/samsung-laptop.c

index 33d3c3f3eb016f57e84733f08c4d49f69a9a4e6c..ec85987b2246ad1c3423b9a0cce8c3367bfec1bb 100644 (file)
@@ -789,7 +789,7 @@ static int __init samsung_init(void)
        sabi_iface = ioremap_nocache(ifaceP, 16);
        if (!sabi_iface) {
                pr_err("Can't remap %x\n", ifaceP);
-               goto exit;
+               goto error_no_signature;
        }
        if (debug) {
                printk(KERN_DEBUG "ifaceP = 0x%08x\n", ifaceP);
@@ -841,7 +841,6 @@ static int __init samsung_init(void)
        if (retval)
                goto error_file_create;
 
-exit:
        return 0;
 
 error_file_create: