cxl: Free virtual PHB when removing
When adding a vPHB in cxl_pci_vphb_add(), we allocate a pci_controller struct using pcibios_alloc_controller(). However, we don't free it in cxl_pci_vphb_remove(), causing a leak. Call pcibios_free_controller() in cxl_pci_vphb_remove() to free the vPHB data structure correctly. Signed-off-by: Daniel Axtens <dja@axtens.net> Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
Родитель
6b8b252f40
Коммит
2e1a2556eb
|
@ -290,8 +290,10 @@ void cxl_pci_vphb_remove(struct cxl_afu *afu)
|
|||
return;
|
||||
|
||||
phb = afu->phb;
|
||||
afu->phb = NULL;
|
||||
|
||||
pci_remove_root_bus(phb->bus);
|
||||
pcibios_free_controller(phb);
|
||||
}
|
||||
|
||||
struct cxl_afu *cxl_pci_to_afu(struct pci_dev *dev)
|
||||
|
|
Загрузка…
Ссылка в новой задаче