[PATCH v2 16/18] x86/PCI: MMCONFIG: add pci_mmconfig_remove() to remove MMCONFIG region

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is only used internally now, but eventually will be used in the
hot-remove path to remove the MMCONFIG region associated with a host bridge.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@xxxxxx>
---
 arch/x86/pci/mmconfig-shared.c |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
index 2709aa8..392f8fe 100644
--- a/arch/x86/pci/mmconfig-shared.c
+++ b/arch/x86/pci/mmconfig-shared.c
@@ -27,17 +27,21 @@ static int __initdata pci_mmcfg_resources_inserted;
 
 LIST_HEAD(pci_mmcfg_list);
 
+static __init void pci_mmconfig_remove(struct pci_mmcfg_region *cfg)
+{
+	if (cfg->res.parent)
+		release_resource(&cfg->res);
+	list_del(&cfg->list);
+	kfree(cfg);
+}
+
 static __init void free_all_mmcfg(void)
 {
 	struct pci_mmcfg_region *cfg, *tmp;
 
 	pci_mmcfg_arch_free();
-	list_for_each_entry_safe(cfg, tmp, &pci_mmcfg_list, list) {
-		if (cfg->res.parent)
-			release_resource(&cfg->res);
-		list_del(&cfg->list);
-		kfree(cfg);
-	}
+	list_for_each_entry_safe(cfg, tmp, &pci_mmcfg_list, list)
+		pci_mmconfig_remove(cfg);
 }
 
 static __init void list_add_sorted(struct pci_mmcfg_region *new)

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux