Since v2: - Split meson patch restricting fw_cfg (Richard) - Reorder pci_dma_map() docstring (Peter, Richard) - Move QEMUSGList in previous patch (David) - Have dma_buf_read/dma_buf_write return dma_addr_t (Peter) - Drop 'propagate MemTxResult' patch (David) - Added R-b tags
Since v1: - Addressed David review comment (stick to dma_addr_t type) - Addressed Peter review comment (incorrect doc string) Hi, This series aims to clarify a bit the DMA API, in particular the 'size' argument which is not clear enough (as we use multiple types for it). This helps avoiding build failures on 32-bit host [*] (and likely overflows calculation too IMO). Some units using the DMA API are first removed from user-mode emulation to avoid build failure (they shouldn't be there in the first place). Then some variables are renamed for clarity (no functional change). Finally we replace misuses with dma_addr_t typedef. Regards, Phil. [*] https://www.mail-archive.com/qemu-devel@nongnu.org/msg858825.html Philippe Mathieu-Daudé (10): stubs: Restrict fw_cfg to system emulation hw/nvram: Restrict fw_cfg QOM interface to sysemu and tools hw/pci: Restrict pci-bus stub to sysemu hw/pci: Document pci_dma_map() hw/dma: Remove CONFIG_USER_ONLY check hw/rdma/rdma_utils: Rename rdma_pci_dma_map 'len' argument hw/scsi: Rename SCSIRequest::resid as 'residual' hw/dma: Fix format string issues using dma_addr_t hw/dma: Move ScatterGatherEntry / QEMUSGList declarations around hw/dma: Use dma_addr_t type definition when relevant hw/rdma/rdma_utils.h | 2 +- include/hw/pci/pci.h | 12 ++++++++++++ include/hw/scsi/scsi.h | 4 ++-- include/sysemu/dma.h | 31 +++++++++++++++---------------- hw/ide/ahci.c | 2 +- hw/nvme/ctrl.c | 2 +- hw/rdma/rdma_utils.c | 14 +++++++------- hw/scsi/megasas.c | 42 +++++++++++++++++++++++++----------------- hw/scsi/scsi-bus.c | 10 +++++----- hw/scsi/scsi-disk.c | 4 ++-- softmmu/dma-helpers.c | 34 ++++++++++++++++++---------------- hw/nvram/meson.build | 6 ++++-- hw/rdma/trace-events | 2 +- stubs/meson.build | 4 ++-- 14 files changed, 96 insertions(+), 73 deletions(-) -- 2.34.1