On Fri, Jun 19, 2026 at 2:47 PM Peter Maydell <[email protected]> wrote: > > On Fri, 19 Jun 2026 at 06:36, Mohammadfaiz Bawa <[email protected]> wrote: > > > > sysbus_mmio_get_region() returns NULL when a device has fewer MMIO > > regions than the requested slot index. platform_bus_get_mmio_addr() > > passes the result directly to memory_region_is_mapped() without a > > NULL check, causing a SIGSEGV. > > > > Return -1 early when the region pointer is NULL, consistent with the > > existing "not mapped" path. > > > > Signed-off-by: Mohammadfaiz Bawa <[email protected]> > > --- > > hw/core/platform-bus.c | 3 +-- > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > diff --git a/hw/core/platform-bus.c b/hw/core/platform-bus.c > > index a2217a2dee..16d0ecc0f3 100644 > > --- a/hw/core/platform-bus.c > > +++ b/hw/core/platform-bus.c > > @@ -59,8 +59,7 @@ hwaddr platform_bus_get_mmio_addr(PlatformBusDevice > > *pbus, SysBusDevice *sbdev, > > Object *pbus_mr_obj = OBJECT(pbus_mr); > > Object *parent_mr; > > > > - if (!memory_region_is_mapped(sbdev_mr)) { > > - /* Region is not mapped? */ > > + if (!sbdev_mr || !memory_region_is_mapped(sbdev_mr)) { > > return -1; > > } > > Reviewed-by: Peter Maydell <[email protected]> > > but doesn't this need to come earlier in the series, so > that the code can handle the NULL pointer before we > change the device/machine to not expose the 2nd MR? > > > thanks > -- PMM >
Right, I didn't think about bisectability, I put the patches in the order I made the changes. v3 then Thanks, Faiz
