From: Eric Auger Date: Tue, 25 Sep 2018 13:02:32 +0000 (+0100) Subject: hw/arm/smmu-common: Fix the name of the iommu memory regions X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=6ce9297be69be10465b556a4b3380f70634c16a7;p=qemu.git hw/arm/smmu-common: Fix the name of the iommu memory regions At the point smmu_find_add_as() gets called, the bus number might not be computed. Let's change the name of IOMMU memory region and just use the devfn and an incrementing index. The name only is used for debug. Signed-off-by: Eric Auger Message-id: 20180921070138.10114-2-eric.auger@redhat.com Reviewed-by: Peter Maydell [PMM: changed 'uint' to 'unsigned int'] Signed-off-by: Peter Maydell --- diff --git a/hw/arm/smmu-common.c b/hw/arm/smmu-common.c index 55c75d65d2..bbf4b8721a 100644 --- a/hw/arm/smmu-common.c +++ b/hw/arm/smmu-common.c @@ -311,6 +311,7 @@ static AddressSpace *smmu_find_add_as(PCIBus *bus, void *opaque, int devfn) SMMUState *s = opaque; SMMUPciBus *sbus = g_hash_table_lookup(s->smmu_pcibus_by_busptr, bus); SMMUDevice *sdev; + static unsigned int index; if (!sbus) { sbus = g_malloc0(sizeof(SMMUPciBus) + @@ -321,9 +322,8 @@ static AddressSpace *smmu_find_add_as(PCIBus *bus, void *opaque, int devfn) sdev = sbus->pbdev[devfn]; if (!sdev) { - char *name = g_strdup_printf("%s-%d-%d", - s->mrtypename, - pci_bus_num(bus), devfn); + char *name = g_strdup_printf("%s-%d-%d", s->mrtypename, devfn, index++); + sdev = sbus->pbdev[devfn] = g_new0(SMMUDevice, 1); sdev->smmu = s;