ipmi:ssif: Fix a memory leak when scanning for an adapter
[ Upstream commitb8d72e32e1] The adapter scan ssif_info_find() sets info->adapter_name if the adapter info came from SMBIOS, as it's not set in that case. However, this function can be called more than once, and it will leak the adapter name if it had already been set. So check for NULL before setting it. Fixes:c4436c9149("ipmi_ssif: avoid registering duplicate ssif interface") Signed-off-by: Corey Minyard <minyard@acm.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
6128288d8f
commit
13623b966b
@@ -1414,7 +1414,7 @@ static struct ssif_addr_info *ssif_info_find(unsigned short addr,
|
||||
restart:
|
||||
list_for_each_entry(info, &ssif_infos, link) {
|
||||
if (info->binfo.addr == addr) {
|
||||
if (info->addr_src == SI_SMBIOS)
|
||||
if (info->addr_src == SI_SMBIOS && !info->adapter_name)
|
||||
info->adapter_name = kstrdup(adapter_name,
|
||||
GFP_KERNEL);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user