diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2008-10-27 19:48:47 (GMT) |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2008-10-31 05:13:46 (GMT) |
commit | b30115ea8f685bcd1769553fe8511745f985053c (patch) | |
tree | 3bc3bbeeeaf9efbf117c87d8cda846f3206e0e46 /arch/powerpc | |
parent | e90a13184600ec756875238ad130e2f205cd9a1b (diff) | |
download | linux-b30115ea8f685bcd1769553fe8511745f985053c.tar.xz |
powerpc/pci: Fix unmapping of IO space on 64-bit
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. The third parameter to __flush_hash_table_range
is `end', not `size'.
This causes the hypervisor to refuse unplugging slots.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/pci_64.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c index 8247cff..3502b91 100644 --- a/arch/powerpc/kernel/pci_64.c +++ b/arch/powerpc/kernel/pci_64.c @@ -426,7 +426,7 @@ int pcibios_unmap_io_space(struct pci_bus *bus) 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; } |