From: Blue Swirl Date: Sun, 15 Nov 2009 14:30:56 +0000 (+0000) Subject: PPC64: Partial fix to Linux crash: revert to old devfn X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=603987488c61ca02ee99890d07cdaecdb118a659;p=qemu.git PPC64: Partial fix to Linux crash: revert to old devfn Before 2e29bd04786003561303dcad940b38afe790fb9b, Uni-North host and AGP bridge were using the same devfn, 11 << 3. The net effect was that only AGP bridge was visible. This was changed in the commit to 13 << 3 for AGP. Some of the later crashes happened due to NULL pointer dereferences generated by 07b7d05377a5e2b242ef0cce3d461d3284700fc0 and insufficient return value checks. Disable host device and revert AGP to 11 << 3. Signed-off-by: Blue Swirl --- diff --git a/hw/unin_pci.c b/hw/unin_pci.c index f089cbd07d..e1cd2a375b 100644 --- a/hw/unin_pci.c +++ b/hw/unin_pci.c @@ -156,7 +156,9 @@ PCIBus *pci_pmac_init(qemu_irq *pic) pci_unin_set_irq, pci_unin_map_irq, pic, 11 << 3, 4); +#if 0 pci_create_simple(d->host_state.bus, 11 << 3, "Uni-north main"); +#endif sysbus_mmio_map(s, 0, 0xf2800000); sysbus_mmio_map(s, 1, 0xf2c00000); @@ -168,7 +170,7 @@ PCIBus *pci_pmac_init(qemu_irq *pic) #endif /* Uninorth AGP bus */ - pci_create_simple(d->host_state.bus, 13 << 3, "Uni-north AGP"); + pci_create_simple(d->host_state.bus, 11 << 3, "Uni-north AGP"); /* Uninorth internal bus */ #if 0