2009/6/23 Alex Gor <[email protected]>: > Attached outputs of 'prtconf -pv' and od -x MCFG_S3200SHX.dat
Sorry, the -p option wasn't ok with prtconf, "prtconf -v" should print the "ecfg" property (e.g. prtconf -v /devices/p...@0,0) But I think the dump of the MCGF data reveals the problem: CFG_BASE_ADDR_ALLOC.base_addr: f0000000 CFG_BASE_ADDR_ALLOC.segment: 0 CFG_BASE_ADDR_ALLOC.start_bno: 0 CFG_BASE_ADDR_ALLOC.end_bno: ff Memory mapped pcie configuration space begins at physical address 0xf0000000 and can be used for pci bus 0 .. 255. That should use all physical addresses from 0xf0000000 ... 0xffffffff. But that can't work, it overlaps the IOAPIC at physical address 0xfec00000. I suspect it panics when Xorg is probing on pci bus 0xec for video devices, this ends up accessing the physical address for the IOAPIC, and I suspect the hypervisor refuses this. I suspect that another way to crash this system is to boot into xVM snigle user mode, and run /usr/X11/bin/scanpci A bios update might help - I think the CFG_BASE_ADDR_ALLOC.end_bno value in the MCFG table must be reduced so that there is no overlap with physical address ranges that are already in use. OTOH usr/src/uts/i86pc/io/pciex/npe_misc.c function npe_query_acpi_mcfg() could be changed to sanity check for and detect this kind of error. _______________________________________________ xen-discuss mailing list [email protected]
