[PATCH v2 0/6] hw/arm/smmuv3: Correct stream ID and event address handling

Simon Veith posted 6 patches 4 years, 3 months ago
Only 3 patches received!
There is a newer version of this series
hw/arm/smmuv3-internal.h |  6 +++---
hw/arm/smmuv3.c          | 28 +++++++++++++++++++++-------
2 files changed, 24 insertions(+), 10 deletions(-)
[PATCH v2 0/6] hw/arm/smmuv3: Correct stream ID and event address handling
Posted by Simon Veith 4 years, 3 months ago
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.

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(-)

Cc: Eric Auger <eric.auger@redhat.com>
Cc: qemu-devel@nongnu.org
Cc: qemu-arm@nongnu.org

-- 
2.7.4


Re: [PATCH v2 0/6] hw/arm/smmuv3: Correct stream ID and event address handling
Posted by Peter Maydell 4 years, 3 months ago
On Wed, 11 Dec 2019 at 14:58, Simon Veith <sveith@amazon.de> wrote:
>
> 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.
>
> 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

Something funny seems to have happened when this series got
sent out: patches 1,2,3 are correctly followups to the cover
letter, but 4,5,6 are followups to patch 3.
This has confused patchew, which thinks the series is incomplete:

https://patchew.org/QEMU/1576076260-18659-1-git-send-email-sveith@amazon.de/1576076860-24820-1-git-send-email-sveith@amazon.de/

thanks
-- PMM

Re: [PATCH v2 0/6] hw/arm/smmuv3: Correct stream ID and event address handling
Posted by Veith, Simon 4 years, 3 months ago
On Mon, 2019-12-16 at 14:45 +0000, Peter Maydell wrote:
> Something funny seems to have happened when this series got
> sent out: patches 1,2,3 are correctly followups to the cover
> letter, but 4,5,6 are followups to patch 3.

You are correct; I had fixed up one of the patches as I was sending
them out, and though I had then added --in-reply-to pointing to the
cover letter, git-send-email seems to have added another level of
threading. Sorry about that. I'll resend the series again.

Regards
Simon



Amazon Development Center Germany GmbH
Krausenstr. 38
10117 Berlin
Geschaeftsfuehrung: Christian Schlaeger, Jonathan Weiss
Eingetragen am Amtsgericht Charlottenburg unter HRB 149173 B
Sitz: Berlin
Ust-ID: DE 289 237 879