diff options
author | Andi Kleen <ak@suse.de> | 2006-02-03 15:51:29 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-04 19:43:14 -0500 |
commit | 1de6bf33bc4601d856c286ad5c7d515468e24bbb (patch) | |
tree | 7ce51e6a5592ee90b065963d8a72e754e58c5e4a | |
parent | d22fe808449cd3b5bacd5c0d447e3675f9ab7619 (diff) |
[PATCH] x86_64: Fix zero mcfg entry workaround on x86-64
I broke this earlier when moving the patch from i386 to x86-64.
Need to return the virtual address here, not the physical address.
This fixes some boot time crashes on x86-64.
Cc: gregkh@suse.de
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | arch/x86_64/pci/mmconfig.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86_64/pci/mmconfig.c b/arch/x86_64/pci/mmconfig.c index 00d4ddbf980c..b4a3fe4ec249 100644 --- a/arch/x86_64/pci/mmconfig.c +++ b/arch/x86_64/pci/mmconfig.c | |||
@@ -46,7 +46,7 @@ static char __iomem *get_virt(unsigned int seg, unsigned bus) | |||
46 | if (pci_mmcfg_config_num == 1 && | 46 | if (pci_mmcfg_config_num == 1 && |
47 | cfg->pci_segment_group_number == 0 && | 47 | cfg->pci_segment_group_number == 0 && |
48 | (cfg->start_bus_number | cfg->end_bus_number) == 0) | 48 | (cfg->start_bus_number | cfg->end_bus_number) == 0) |
49 | return cfg->base_address; | 49 | return pci_mmcfg_virt[0].virt; |
50 | 50 | ||
51 | /* Fall back to type 0 */ | 51 | /* Fall back to type 0 */ |
52 | return 0; | 52 | return 0; |