[PATCH v3 0/6] hw: Let the DMA API take a MemTxAttrs argument

Philippe Mathieu-Daudé posted 6 patches 2 years, 10 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210702092439.989969-1-philmd@redhat.com
include/hw/pci/pci.h          |  6 +++--
include/hw/ppc/spapr_vio.h    | 11 +++++---
include/sysemu/dma.h          | 50 ++++++++++++++++++++++-------------
hw/arm/musicpal.c             | 13 ++++-----
hw/arm/smmu-common.c          |  3 ++-
hw/arm/smmuv3.c               | 14 ++++++----
hw/core/generic-loader.c      |  3 ++-
hw/display/virtio-gpu.c       | 10 ++++---
hw/dma/pl330.c                | 12 ++++++---
hw/dma/sparc32_dma.c          | 16 ++++++-----
hw/dma/xlnx-zynq-devcfg.c     |  6 +++--
hw/dma/xlnx_dpdma.c           | 10 ++++---
hw/hyperv/vmbus.c             |  8 +++---
hw/i386/amd_iommu.c           | 16 ++++++-----
hw/i386/intel_iommu.c         | 28 ++++++++++++--------
hw/ide/ahci.c                 |  8 +++---
hw/ide/macio.c                |  2 +-
hw/intc/spapr_xive.c          |  3 ++-
hw/intc/xive.c                |  7 ++---
hw/misc/bcm2835_property.c    |  3 ++-
hw/misc/macio/mac_dbdma.c     | 10 ++++---
hw/net/allwinner-sun8i-emac.c | 18 ++++++++-----
hw/net/ftgmac100.c            | 25 +++++++++++-------
hw/net/imx_fec.c              | 32 +++++++++++++---------
hw/net/npcm7xx_emc.c          | 20 ++++++++------
hw/nvram/fw_cfg.c             | 12 ++++++---
hw/pci-host/pnv_phb3.c        |  5 ++--
hw/pci-host/pnv_phb3_msi.c    |  9 ++++---
hw/pci-host/pnv_phb4.c        |  5 ++--
hw/sd/allwinner-sdhost.c      | 14 +++++-----
hw/sd/sdhci.c                 | 35 +++++++++++++++---------
hw/usb/hcd-dwc2.c             |  8 +++---
hw/usb/hcd-ehci.c             |  6 +++--
hw/usb/hcd-ohci.c             | 28 ++++++++++++--------
hw/usb/hcd-xhci.c             | 18 ++++++++-----
hw/usb/libhw.c                |  3 ++-
hw/virtio/virtio.c            |  6 +++--
softmmu/dma-helpers.c         | 11 ++++----
38 files changed, 305 insertions(+), 189 deletions(-)
[PATCH v3 0/6] hw: Let the DMA API take a MemTxAttrs argument
Posted by Philippe Mathieu-Daudé 2 years, 10 months ago
I'm going to send yet another series aiming to fix the DMA
reentrancy problem, which is based on these patches. Since
they are already reviewed, send them apart as a preparatory
series.

Since v2:
- Rebased, fixing conflicts in:
  . hw/display/virtio-gpu.c
  . hw/ide/ahci.c
  . hw/net/allwinner-sun8i-emac.c
  . hw/pci-host/pnv_phb4.c
  . hw/sd/sdhci.c

Supersedes: <20201001172519.1620782-1-philmd@redhat.com>

Philippe Mathieu-Daudé (6):
  dma: Let dma_memory_valid() take MemTxAttrs argument
  dma: Let dma_memory_set() take MemTxAttrs argument
  dma: Let dma_memory_rw_relaxed() take MemTxAttrs argument
  dma: Let dma_memory_rw() take MemTxAttrs argument
  dma: Let dma_memory_read/write() take MemTxAttrs argument
  dma: Let dma_memory_map() take MemTxAttrs argument

 include/hw/pci/pci.h          |  6 +++--
 include/hw/ppc/spapr_vio.h    | 11 +++++---
 include/sysemu/dma.h          | 50 ++++++++++++++++++++++-------------
 hw/arm/musicpal.c             | 13 ++++-----
 hw/arm/smmu-common.c          |  3 ++-
 hw/arm/smmuv3.c               | 14 ++++++----
 hw/core/generic-loader.c      |  3 ++-
 hw/display/virtio-gpu.c       | 10 ++++---
 hw/dma/pl330.c                | 12 ++++++---
 hw/dma/sparc32_dma.c          | 16 ++++++-----
 hw/dma/xlnx-zynq-devcfg.c     |  6 +++--
 hw/dma/xlnx_dpdma.c           | 10 ++++---
 hw/hyperv/vmbus.c             |  8 +++---
 hw/i386/amd_iommu.c           | 16 ++++++-----
 hw/i386/intel_iommu.c         | 28 ++++++++++++--------
 hw/ide/ahci.c                 |  8 +++---
 hw/ide/macio.c                |  2 +-
 hw/intc/spapr_xive.c          |  3 ++-
 hw/intc/xive.c                |  7 ++---
 hw/misc/bcm2835_property.c    |  3 ++-
 hw/misc/macio/mac_dbdma.c     | 10 ++++---
 hw/net/allwinner-sun8i-emac.c | 18 ++++++++-----
 hw/net/ftgmac100.c            | 25 +++++++++++-------
 hw/net/imx_fec.c              | 32 +++++++++++++---------
 hw/net/npcm7xx_emc.c          | 20 ++++++++------
 hw/nvram/fw_cfg.c             | 12 ++++++---
 hw/pci-host/pnv_phb3.c        |  5 ++--
 hw/pci-host/pnv_phb3_msi.c    |  9 ++++---
 hw/pci-host/pnv_phb4.c        |  5 ++--
 hw/sd/allwinner-sdhost.c      | 14 +++++-----
 hw/sd/sdhci.c                 | 35 +++++++++++++++---------
 hw/usb/hcd-dwc2.c             |  8 +++---
 hw/usb/hcd-ehci.c             |  6 +++--
 hw/usb/hcd-ohci.c             | 28 ++++++++++++--------
 hw/usb/hcd-xhci.c             | 18 ++++++++-----
 hw/usb/libhw.c                |  3 ++-
 hw/virtio/virtio.c            |  6 +++--
 softmmu/dma-helpers.c         | 11 ++++----
 38 files changed, 305 insertions(+), 189 deletions(-)

-- 
2.31.1


Re: [PATCH v3 0/6] hw: Let the DMA API take a MemTxAttrs argument
Posted by Stefan Hajnoczi 2 years, 10 months ago
On Fri, Jul 02, 2021 at 11:24:33AM +0200, Philippe Mathieu-Daudé wrote:
> I'm going to send yet another series aiming to fix the DMA
> reentrancy problem, which is based on these patches. Since
> they are already reviewed, send them apart as a preparatory
> series.
> 
> Since v2:
> - Rebased, fixing conflicts in:
>   . hw/display/virtio-gpu.c
>   . hw/ide/ahci.c
>   . hw/net/allwinner-sun8i-emac.c
>   . hw/pci-host/pnv_phb4.c
>   . hw/sd/sdhci.c
> 
> Supersedes: <20201001172519.1620782-1-philmd@redhat.com>
> 
> Philippe Mathieu-Daudé (6):
>   dma: Let dma_memory_valid() take MemTxAttrs argument
>   dma: Let dma_memory_set() take MemTxAttrs argument
>   dma: Let dma_memory_rw_relaxed() take MemTxAttrs argument
>   dma: Let dma_memory_rw() take MemTxAttrs argument
>   dma: Let dma_memory_read/write() take MemTxAttrs argument
>   dma: Let dma_memory_map() take MemTxAttrs argument
> 
>  include/hw/pci/pci.h          |  6 +++--
>  include/hw/ppc/spapr_vio.h    | 11 +++++---
>  include/sysemu/dma.h          | 50 ++++++++++++++++++++++-------------
>  hw/arm/musicpal.c             | 13 ++++-----
>  hw/arm/smmu-common.c          |  3 ++-
>  hw/arm/smmuv3.c               | 14 ++++++----
>  hw/core/generic-loader.c      |  3 ++-
>  hw/display/virtio-gpu.c       | 10 ++++---
>  hw/dma/pl330.c                | 12 ++++++---
>  hw/dma/sparc32_dma.c          | 16 ++++++-----
>  hw/dma/xlnx-zynq-devcfg.c     |  6 +++--
>  hw/dma/xlnx_dpdma.c           | 10 ++++---
>  hw/hyperv/vmbus.c             |  8 +++---
>  hw/i386/amd_iommu.c           | 16 ++++++-----
>  hw/i386/intel_iommu.c         | 28 ++++++++++++--------
>  hw/ide/ahci.c                 |  8 +++---
>  hw/ide/macio.c                |  2 +-
>  hw/intc/spapr_xive.c          |  3 ++-
>  hw/intc/xive.c                |  7 ++---
>  hw/misc/bcm2835_property.c    |  3 ++-
>  hw/misc/macio/mac_dbdma.c     | 10 ++++---
>  hw/net/allwinner-sun8i-emac.c | 18 ++++++++-----
>  hw/net/ftgmac100.c            | 25 +++++++++++-------
>  hw/net/imx_fec.c              | 32 +++++++++++++---------
>  hw/net/npcm7xx_emc.c          | 20 ++++++++------
>  hw/nvram/fw_cfg.c             | 12 ++++++---
>  hw/pci-host/pnv_phb3.c        |  5 ++--
>  hw/pci-host/pnv_phb3_msi.c    |  9 ++++---
>  hw/pci-host/pnv_phb4.c        |  5 ++--
>  hw/sd/allwinner-sdhost.c      | 14 +++++-----
>  hw/sd/sdhci.c                 | 35 +++++++++++++++---------
>  hw/usb/hcd-dwc2.c             |  8 +++---
>  hw/usb/hcd-ehci.c             |  6 +++--
>  hw/usb/hcd-ohci.c             | 28 ++++++++++++--------
>  hw/usb/hcd-xhci.c             | 18 ++++++++-----
>  hw/usb/libhw.c                |  3 ++-
>  hw/virtio/virtio.c            |  6 +++--
>  softmmu/dma-helpers.c         | 11 ++++----
>  38 files changed, 305 insertions(+), 189 deletions(-)
> 
> -- 
> 2.31.1
> 
> 

Acked-by: Stefan Hajnoczi <stefanha@redhat.com>