Patchwork [8/10] powerpc/pci: Fix unmapping of IO space on 64-bit

login
register
mail settings
Submitter Benjamin Herrenschmidt
Date Oct. 28, 2008, 5:48 a.m.
Message ID <20081028054949.2125EDE0CC@ozlabs.org>
Download mbox | patch
Permalink /patch/6040/
State Accepted, archived
Commit b30115ea8f685bcd1769553fe8511745f985053c
Headers show

Comments

Benjamin Herrenschmidt - Oct. 28, 2008, 5:48 a.m.
A typo/thinko made us pass the wrong argument to __flush_hash_table_range
when unplugging bridges, thus not flushing all the translations for
the IO space on unplug.

This causes the hypervisor to refuse unplugging slots.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---

 arch/powerpc/kernel/pci_64.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch

--- linux-work.orig/arch/powerpc/kernel/pci_64.c	2008-10-28 16:33:48.000000000 +1100
+++ linux-work/arch/powerpc/kernel/pci_64.c	2008-10-28 16:38:45.000000000 +1100
@@ -426,7 +426,7 @@  int pcibios_unmap_io_space(struct pci_bu
 			 pci_name(bus->self));
 
 		__flush_hash_table_range(&init_mm, res->start + _IO_BASE,
-					 res->end - res->start + 1);
+					 res->end + _IO_BASE + 1);
 		return 0;
 	}