From cae7316708c45e4cfdc586c2e0a02eaea398e246 Mon Sep 17 00:00:00 2001 From: Geliang Tang Date: Sat, 7 Nov 2015 12:43:48 +0800 Subject: efi-pstore: implement efivars_pstore_exit() The original efivars_pstore_exit() is empty. I 1) add a bufsize check statement. 2) call pstore_unregister as it is defined now. 3) free the memory and set bufsize to 0. Signed-off-by: Geliang Tang Acked-by: Matt Fleming Signed-off-by: Kees Cook --- drivers/firmware/efi/efi-pstore.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'drivers/firmware/efi/efi-pstore.c') diff --git a/drivers/firmware/efi/efi-pstore.c b/drivers/firmware/efi/efi-pstore.c index d5903ea77238..30a24d09ea6c 100644 --- a/drivers/firmware/efi/efi-pstore.c +++ b/drivers/firmware/efi/efi-pstore.c @@ -399,6 +399,13 @@ static __init int efivars_pstore_init(void) static __exit void efivars_pstore_exit(void) { + if (!efi_pstore_info.bufsize) + return; + + pstore_unregister(&efi_pstore_info); + kfree(efi_pstore_info.buf); + efi_pstore_info.buf = NULL; + efi_pstore_info.bufsize = 0; } module_init(efivars_pstore_init); -- cgit v1.2.3