mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-30 06:10:56 +00:00
efi: fix memory leak in krealloc failure handling
[ Upstream commit 0d3ad19179
]
In the previous code, there was a memory leak issue where the
previously allocated memory was not freed upon a failed krealloc
operation. This patch addresses the problem by releasing the old memory
before setting the pointer to NULL in case of a krealloc failure. This
ensures that memory is properly managed and avoids potential memory
leaks.
Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
678edd2dfd
commit
8e1a6594d7
1 changed files with 6 additions and 2 deletions
|
@ -245,9 +245,13 @@ static __init int efivar_ssdt_load(void)
|
|||
if (status == EFI_NOT_FOUND) {
|
||||
break;
|
||||
} else if (status == EFI_BUFFER_TOO_SMALL) {
|
||||
name = krealloc(name, name_size, GFP_KERNEL);
|
||||
if (!name)
|
||||
efi_char16_t *name_tmp =
|
||||
krealloc(name, name_size, GFP_KERNEL);
|
||||
if (!name_tmp) {
|
||||
kfree(name);
|
||||
return -ENOMEM;
|
||||
}
|
||||
name = name_tmp;
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue