[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 0/6] hw/arm/smmuv3: Correct stream ID and event address handli
From: |
Simon Veith |
Subject: |
[PATCH v3 0/6] hw/arm/smmuv3: Correct stream ID and event address handling |
Date: |
Mon, 16 Dec 2019 16:15:06 +0100 |
While working on the Linux SMMUv3 driver, I noticed a few cases where the QEMU
SMMUv3 behavior relating to stream tables was inconsistent with our hardware.
Also, when debugging those differences, I found that the errors reported through
the QEMU SMMUv3 event queue contained the address fields in an incorrect
position.
These patches correct the QEMU SMMUv3 behavior to match the specification (and
the behavior that I observed in our hardware). Linux guests normally will not
notice these issues, but other SMMUv3 driver implementations might.
Changes in v2:
* New patch "hw/arm/smmuv3: Correct SMMU_BASE_ADDR_MASK value" added
* Updated patch "hw/arm/smmuv3: Check stream IDs against actual table LOG2SIZE"
* Updated patch "hw/arm/smmuv3: Align stream table base address to table size"
Changes in v3:
* No changes, but sending again to correct a patch submission mishap that
confused Patchew
Simon Veith (6):
hw/arm/smmuv3: Apply address mask to linear strtab base address
hw/arm/smmuv3: Correct SMMU_BASE_ADDR_MASK value
hw/arm/smmuv3: Check stream IDs against actual table LOG2SIZE
hw/arm/smmuv3: Align stream table base address to table size
hw/arm/smmuv3: Use correct bit positions in EVT_SET_ADDR2 macro
hw/arm/smmuv3: Report F_STE_FETCH fault address in correct word
position
hw/arm/smmuv3-internal.h | 6 +++---
hw/arm/smmuv3.c | 28 +++++++++++++++++++++-------
2 files changed, 24 insertions(+), 10 deletions(-)
--
2.7.4
- [PATCH v3 0/6] hw/arm/smmuv3: Correct stream ID and event address handling,
Simon Veith <=
- [PATCH v3 2/6] hw/arm/smmuv3: Correct SMMU_BASE_ADDR_MASK value, Simon Veith, 2019/12/16
- [PATCH v3 1/6] hw/arm/smmuv3: Apply address mask to linear strtab base address, Simon Veith, 2019/12/16
- [PATCH v3 3/6] hw/arm/smmuv3: Check stream IDs against actual table LOG2SIZE, Simon Veith, 2019/12/16
- [PATCH v3 5/6] hw/arm/smmuv3: Use correct bit positions in EVT_SET_ADDR2 macro, Simon Veith, 2019/12/16
- [PATCH v3 6/6] hw/arm/smmuv3: Report F_STE_FETCH fault address in correct word position, Simon Veith, 2019/12/16
- [PATCH v3 4/6] hw/arm/smmuv3: Align stream table base address to table size, Simon Veith, 2019/12/16
- Re: [PATCH v3 0/6] hw/arm/smmuv3: Correct stream ID and event address handling, Auger Eric, 2019/12/17