From 73cb83af0649f958bb31b5b76f46c164c6f2952c Mon Sep 17 00:00:00 2001 From: jiangdongxu Date: Fri, 11 Feb 2022 16:28:55 +0800 Subject: [PATCH 3/6] seabios: fix memory leak when pci check fix code memory leak when pci check failed free busses memory when pci_bios_check_devices function returns error in pci_setup() Signed-off-by: liuxiangodng Signed-off-by: jiangdongxu --- roms/seabios/src/fw/pciinit.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/roms/seabios/src/fw/pciinit.c b/roms/seabios/src/fw/pciinit.c index d25931bb05..9df35d05d1 100644 --- a/roms/seabios/src/fw/pciinit.c +++ b/roms/seabios/src/fw/pciinit.c @@ -1171,8 +1171,11 @@ pci_setup(void) return; } memset(busses, 0, sizeof(*busses) * (MaxPCIBus + 1)); - if (pci_bios_check_devices(busses)) + if (pci_bios_check_devices(busses)) { + dprintf(1, "pci_bios_check_devices(busses) failed!\n"); + free(busses); return; + } dprintf(1, "=== PCI new allocation pass #2 ===\n"); pci_bios_map_devices(busses); -- 2.27.0