Message ID | 20220202111602.627429-1-eric.auger@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | hw/arm/smmuv3: Fix device reset | expand |
On Wed, 2 Feb 2022 at 11:16, Eric Auger <eric.auger@redhat.com> wrote: > > We currently miss a bunch of register resets in the device reset > function. This sometimes prevents the guest from rebooting after > a system_reset (with virtio-blk-pci). For instance, we may get > the following errors: > > invalid STE > smmuv3-iommu-memory-region-0-0 translation failed for iova=0x13a9d2000(SMMU_EVT_C_BAD_STE) > Invalid read at addr 0x13A9D2000, size 2, region '(null)', reason: rejected > invalid STE > smmuv3-iommu-memory-region-0-0 translation failed for iova=0x13a9d2000(SMMU_EVT_C_BAD_STE) > Invalid write at addr 0x13A9D2000, size 2, region '(null)', reason: rejected > invalid STE > > Signed-off-by: Eric Auger <eric.auger@redhat.com> > Fixes: 10a83cb988 ("hw/arm/smmuv3: Skeleton") > --- Applied to target-arm.next, thanks. -- PMM
diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 3b43368be0f..674623aabea 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -278,6 +278,12 @@ static void smmuv3_init_regs(SMMUv3State *s) s->features = 0; s->sid_split = 0; s->aidr = 0x1; + s->cr[0] = 0; + s->cr0ack = 0; + s->irq_ctrl = 0; + s->gerror = 0; + s->gerrorn = 0; + s->statusr = 0; } static int smmu_get_ste(SMMUv3State *s, dma_addr_t addr, STE *buf,
We currently miss a bunch of register resets in the device reset function. This sometimes prevents the guest from rebooting after a system_reset (with virtio-blk-pci). For instance, we may get the following errors: invalid STE smmuv3-iommu-memory-region-0-0 translation failed for iova=0x13a9d2000(SMMU_EVT_C_BAD_STE) Invalid read at addr 0x13A9D2000, size 2, region '(null)', reason: rejected invalid STE smmuv3-iommu-memory-region-0-0 translation failed for iova=0x13a9d2000(SMMU_EVT_C_BAD_STE) Invalid write at addr 0x13A9D2000, size 2, region '(null)', reason: rejected invalid STE Signed-off-by: Eric Auger <eric.auger@redhat.com> Fixes: 10a83cb988 ("hw/arm/smmuv3: Skeleton") --- hw/arm/smmuv3.c | 6 ++++++ 1 file changed, 6 insertions(+)