Deleting from and adding to the parent memory region seems to be the old way of changing a memory region's address which is superseeded by memory_region_set_address(). Moreover, memory_region_set_address() is already used for tseg_window which is tseg_blackhole's counterpart in SMM space.
Ammends: bafc90bdc594 'q35: implement TSEG' Signed-off-by: Bernhard Beschow <[email protected]> --- hw/pci-host/q35.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index 3124cad60f..0384ce4350 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -404,12 +404,11 @@ static void mch_update_smram(MCHPCIState *mch) } else { tseg_size = 0; } - memory_region_del_subregion(mch->system_memory, &mch->tseg_blackhole); + memory_region_set_enabled(&mch->tseg_blackhole, tseg_size); memory_region_set_size(&mch->tseg_blackhole, tseg_size); - memory_region_add_subregion_overlap(mch->system_memory, - mch->below_4g_mem_size - tseg_size, - &mch->tseg_blackhole, 1); + memory_region_set_address(&mch->tseg_blackhole, + mch->below_4g_mem_size - tseg_size); memory_region_set_enabled(&mch->tseg_window, tseg_size); memory_region_set_size(&mch->tseg_window, tseg_size); -- 2.39.1
