2011-03-18 07:12:58

by Dan Carpenter

[permalink] [raw]
Subject: [patch 2/2] efivars: handle errors from register_efivars()

We should unwind and return an error if register_efivars() fails.

Signed-off-by: Dan Carpenter <[email protected]>

diff --git a/drivers/firmware/efivars.c b/drivers/firmware/efivars.c
index ff2fe40..5d1ec68 100644
--- a/drivers/firmware/efivars.c
+++ b/drivers/firmware/efivars.c
@@ -803,6 +803,8 @@ efivars_init(void)
ops.set_variable = efi.set_variable;
ops.get_next_variable = efi.get_next_variable;
error = register_efivars(&__efivars, &ops, efi_kobj);
+ if (error)
+ goto err_put;

/* Don't forget the systab entry */
error = sysfs_create_group(efi_kobj, &efi_subsys_attr_group);
@@ -810,10 +812,15 @@ efivars_init(void)
printk(KERN_ERR
"efivars: Sysfs attribute export failed with error %d.\n",
error);
- unregister_efivars(&__efivars);
- kobject_put(efi_kobj);
+ goto err_unregister;
}

+ return 0;
+
+err_unregister:
+ unregister_efivars(&__efivars);
+err_put:
+ kobject_put(efi_kobj);
return error;
}


2011-03-18 09:24:44

by Mike Waychison

[permalink] [raw]
Subject: Re: [patch 2/2] efivars: handle errors from register_efivars()

On Fri, Mar 18, 2011 at 12:12 AM, Dan Carpenter <[email protected]> wrote:
> We should unwind and return an error if register_efivars() fails.
>
> Signed-off-by: Dan Carpenter <[email protected]>

Acked-by: Mike Waychison <[email protected]>