Otherwise the PCI size for such regions can be calculated erroneously. Signed-off-by: Marcelo Tosatti Index: trunk/hw/pci.c =================================================================== --- trunk.orig/hw/pci.c +++ trunk/hw/pci.c @@ -249,6 +249,11 @@ void pci_register_io_region(PCIDevice *p if ((unsigned int)region_num >= PCI_NUM_REGIONS) return; + + if (size & (size-1)) + term_printf("WARNING: PCI region size must be pow2 " + "type=0x%x, size=0x%x\n", type, size); + r = &pci_dev->io_regions[region_num]; r->addr = -1; r->size = size; --