2006-10-10 13:19:55

by Jeff Garzik

[permalink] [raw]
Subject: [PATCH] firmware/efivars: handle error



Signed-off-by: Jeff Garzik <[email protected]>

---

drivers/firmware/efivars.c | 7 ++++++-

diff --git a/drivers/firmware/efivars.c b/drivers/firmware/efivars.c
index 8ebce1c..5ab5e39 100644
--- a/drivers/firmware/efivars.c
+++ b/drivers/firmware/efivars.c
@@ -639,7 +639,12 @@ efivar_create_sysfs_entry(unsigned long

kobject_set_name(&new_efivar->kobj, "%s", short_name);
kobj_set_kset_s(new_efivar, vars_subsys);
- kobject_register(&new_efivar->kobj);
+ i = kobject_register(&new_efivar->kobj);
+ if (i) {
+ kfree(short_name);
+ kfree(new_efivar);
+ return 1;
+ }

kfree(short_name);
short_name = NULL;


2006-10-10 13:29:45

by Matt Domsch

[permalink] [raw]
Subject: Re: [PATCH] firmware/efivars: handle error


On Tue, Oct 10, 2006 at 09:19:49AM -0400, Jeff Garzik wrote:
>
>
> Signed-off-by: Jeff Garzik <[email protected]>
>
> ---
>
> drivers/firmware/efivars.c | 7 ++++++-
>
> diff --git a/drivers/firmware/efivars.c b/drivers/firmware/efivars.c
> index 8ebce1c..5ab5e39 100644
> --- a/drivers/firmware/efivars.c
> +++ b/drivers/firmware/efivars.c
> @@ -639,7 +639,12 @@ efivar_create_sysfs_entry(unsigned long
>
> kobject_set_name(&new_efivar->kobj, "%s", short_name);
> kobj_set_kset_s(new_efivar, vars_subsys);
> - kobject_register(&new_efivar->kobj);
> + i = kobject_register(&new_efivar->kobj);
> + if (i) {
> + kfree(short_name);
> + kfree(new_efivar);
> + return 1;
> + }
>
> kfree(short_name);
> short_name = NULL;


Acked-by: Matt Domsch <[email protected]>

Thanks Jeff!

--
Matt Domsch
Software Architect
Dell Linux Solutions linux.dell.com & http://www.dell.com/linux
Linux on Dell mailing lists @ http://lists.us.dell.com