[PATCH 5.4 049/232] pstore/platform: fix potential mem leak if pstore_init_fs failed

From: Greg Kroah-Hartman
Date: Thu Apr 16 2020 - 11:22:26 EST


From: chenqiwu <chenqiwu@xxxxxxxxxx>

[ Upstream commit 8a57d6d4ddfa41c49014e20493152c41a38fcbf8 ]

There is a potential mem leak when pstore_init_fs failed,
since the pstore compression maybe unlikey to initialized
successfully. We must clean up the allocation once this
unlikey issue happens.

Signed-off-by: chenqiwu <chenqiwu@xxxxxxxxxx>
Link: https://lore.kernel.org/r/1581068800-13817-1-git-send-email-qiwuchen55@xxxxxxxxx
Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
fs/pstore/platform.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c
index 3d7024662d295..cdf5b8ae2583c 100644
--- a/fs/pstore/platform.c
+++ b/fs/pstore/platform.c
@@ -823,9 +823,9 @@ static int __init pstore_init(void)

ret = pstore_init_fs();
if (ret)
- return ret;
+ free_buf_for_compression();

- return 0;
+ return ret;
}
late_initcall(pstore_init);

--
2.20.1