RAS/CEC: Fix potential memory leak
authorBorislav Petkov <bp@suse.de>
Sat, 20 Apr 2019 19:39:24 +0000 (21:39 +0200)
committerBorislav Petkov <bp@suse.de>
Sat, 8 Jun 2019 15:35:04 +0000 (17:35 +0200)
Free the array page if a failure is encountered while creating the
debugfs nodes.

Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-edac <linux-edac@vger.kernel.org>
drivers/ras/cec.c

index 31868bd99e8d5e3c58703f58cf40e06d603e99a3..f57e869dfea2833772212097b7aceb255fa33321 100644 (file)
@@ -504,8 +504,10 @@ void __init cec_init(void)
                return;
        }
 
-       if (create_debugfs_nodes())
+       if (create_debugfs_nodes()) {
+               free_page((unsigned long)ce_arr.array);
                return;
+       }
 
        INIT_DELAYED_WORK(&cec_work, cec_work_fn);
        schedule_delayed_work(&cec_work, CEC_DECAY_DEFAULT_INTERVAL);