On Fri, 3 Jun 2022 at 10:29, Gerd Hoffmann <kraxel@...> wrote:
Hi,
This seems to be related to the padding logic, i.e., we are trying to preserve some extra I/O space for the root port in case we hotplug something that might need it.
- if (DefaultIo) { + if (DefaultIo && FALSE) { // // Request defaults. //
Oh, *there* it comes from. Given this is configurable already we can fix that one in qemu with a microvm tweak:
diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 4b3b1dd262f1..f01d972f5d28 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -757,6 +757,12 @@ static void microvm_class_init(ObjectClass *oc, void *data) "Set off to disable adding virtio-mmio devices to the kernel cmdline");
machine_class_allow_dynamic_sysbus_dev(mc, TYPE_RAMFB_DEVICE); + + /* + * pcie host bridge (gpex) on microvm has no io address window, + * so reserving io space is not going to work. Turn it off. + */ + object_register_sugar_prop("pcie-root-port", "io-reserve", "0", true); }
static const TypeInfo microvm_machine_info = {
So, I think we can drop patch #1. Want me respin the series, or can you simply drop the patch on merge?