efivars: memory leak on error in create_efivars_bin_attributes()
Dan Carpenter [Fri, 18 Mar 2011 07:12:14 +0000 (10:12 +0300)]
This is a cut and paste bug.  We intended to free ->del_var and
->new_var but we only free ->new_var.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Acked-by: Mike Waychison <mikew@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

drivers/firmware/efivars.c

index ff0c373..ff2fe40 100644 (file)
@@ -677,8 +677,8 @@ create_efivars_bin_attributes(struct efivars *efivars)
 
        return 0;
 out_free:
-       kfree(efivars->new_var);
-       efivars->new_var = NULL;
+       kfree(efivars->del_var);
+       efivars->del_var = NULL;
        kfree(efivars->new_var);
        efivars->new_var = NULL;
        return error;