[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Yu4iZzP92/f/lNEx@infradead.org>
Date: Sat, 6 Aug 2022 10:12:23 +0200
From: Christoph Hellwig <hch@...radead.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, iommu@...ts.linux.dev
Subject: [GIT PULL] dma-mapping updates for the kernel formetly known as 5.20
The following changes since commit a111daf0c53ae91e71fd2bfe7497862d14132e3e:
Linux 5.19-rc3 (2022-06-19 15:06:47 -0500)
are available in the Git repository at:
git://git.infradead.org/users/hch/dma-mapping.git tags/dma-mapping-5.20-2022-08-06
for you to fetch changes up to 5c850d31880e00f063fa2a3746ba212c4bcc510f:
swiotlb: fix passing local variable to debugfs_create_ulong() (2022-07-28 07:23:30 -0700)
----------------------------------------------------------------
dma-mapping updates
- convert arm32 to the common dma-direct code (Arnd Bergmann, Robin Murphy,
Christoph Hellwig)
- restructure the PCIe peer to peer mapping support (Logan Gunthorpe)
- allow the IOMMU code to communicate an optional DMA mapping length
and use that in scsi and libata (John Garry)
- split the global swiotlb lock (Tianyu Lan)
- various fixes and cleanup (Chao Gao, Dan Carpenter, Dongli Zhang,
Lukas Bulwahn, Robin Murphy)
----------------------------------------------------------------
Arnd Bergmann (1):
ARM: sa1100/assabet: move dmabounce hack to ohci driver
Chao Gao (3):
swiotlb: remove unused fields in io_tlb_mem
swiotlb: consolidate rounding up default_nslabs
swiotlb: ensure a segment doesn't cross the area boundary
Christoph Hellwig (7):
ARM/dma-mapping: remove dmabounce
ARM/dma-mapping: mark various dma-mapping routines static in dma-mapping.c
ARM/dma-mapping: remove the unused virt_to_dma helper
ARM/dma-mapping: use dma_to_phys/phys_to_dma in the dma-mapping code
ARM/dma-mapping: use the generic versions of dma_to_phys/phys_to_dma by default
ARM/dma-mapping: use dma-direct unconditionally
swiotlb: move struct io_tlb_slot to swiotlb.c
Dan Carpenter (1):
swiotlb: fix use after free on error handling path
Dongli Zhang (4):
swiotlb: remove the unused swiotlb_force declaration
swiotlb: remove a useless return in swiotlb_init
x86/swiotlb: fix param usage in boot-options.rst
swiotlb: panic if nslabs is too small
John Garry (7):
dma-mapping: add dma_opt_mapping_size()
dma-iommu: add iommu_dma_opt_mapping_size()
scsi: core: cap shost max_sectors according to DMA limits only once
scsi: sd: allow max_sectors be capped at DMA optimal size limit
scsi: scsi_transport_sas: cap shost opt_sectors according to DMA optimal limit
ata: libata-scsi: cap ata_device->max_sectors according to shost->max_sectors
scsi: sd: Add a comment about limiting max_sectors to shost optimal limit
Logan Gunthorpe (14):
lib/scatterlist: add flag for indicating P2PDMA segments in an SGL
PCI/P2PDMA: Attempt to set map_type if it has not been set
PCI/P2PDMA: Introduce helpers for dma_map_sg implementations
dma-mapping: allow EREMOTEIO return code for P2PDMA transfers
dma-direct: support PCI P2PDMA pages in dma-direct map_sg
dma-mapping: add flags to dma_map_ops to indicate PCI P2PDMA support
iommu: Explicitly skip bus address marked segments in __iommu_map_sg()
iommu/dma: support PCI P2PDMA pages in dma-iommu map_sg
nvme-pci: check DMA ops when indicating support for PCI P2PDMA
nvme-pci: convert to using dma_map_sgtable()
RDMA/core: introduce ib_dma_pci_p2p_dma_supported()
RDMA/rw: drop pci_p2pdma_[un]map_sg()
PCI/P2PDMA: Remove pci_p2pdma_[un]map_sg()
dma-mapping: reformat comment to suppress htmldoc warning
Lukas Bulwahn (1):
dma-mapping: update comment after dmabounce removal
Robin Murphy (4):
ARM/dma-mapping: drop .dma_supported for IOMMU ops
ARM/dma-mapping: consolidate IOMMU ops callbacks
ARM/dma-mapping: merge IOMMU ops
swiotlb: fail map correctly with failed io_tlb_default_mem
Tianyu Lan (3):
swiotlb: split up the global swiotlb lock
swiotlb: clean up some coding style and minor issues
swiotlb: fix passing local variable to debugfs_create_ulong()
Documentation/admin-guide/kernel-parameters.txt | 5 +-
Documentation/core-api/dma-api.rst | 14 +
Documentation/x86/x86_64/boot-options.rst | 8 +-
arch/arm/Kconfig | 5 +-
arch/arm/common/Kconfig | 6 +-
arch/arm/common/Makefile | 1 -
arch/arm/common/dmabounce.c | 582 ------------------
arch/arm/common/sa1111.c | 64 --
arch/arm/include/asm/device.h | 3 -
arch/arm/include/asm/dma-direct.h | 49 +-
arch/arm/include/asm/dma-mapping.h | 128 ----
arch/arm/include/asm/memory.h | 2 -
arch/arm/mach-footbridge/Kconfig | 1 +
arch/arm/mach-footbridge/common.c | 19 +-
arch/arm/mach-footbridge/include/mach/dma-direct.h | 8 +
arch/arm/mach-footbridge/include/mach/memory.h | 4 -
arch/arm/mach-highbank/highbank.c | 2 +-
arch/arm/mach-mvebu/coherency.c | 2 +-
arch/arm/mm/dma-mapping.c | 652 +++------------------
drivers/ata/libata-scsi.c | 1 +
drivers/infiniband/core/rw.c | 45 +-
drivers/iommu/dma-iommu.c | 105 +++-
drivers/iommu/iommu.c | 4 +
drivers/iommu/iova.c | 5 +
drivers/nvme/host/core.c | 3 +-
drivers/nvme/host/nvme.h | 2 +-
drivers/nvme/host/pci.c | 81 ++-
drivers/nvme/target/rdma.c | 2 +-
drivers/pci/Kconfig | 5 +
drivers/pci/p2pdma.c | 93 +--
drivers/scsi/hosts.c | 5 +
drivers/scsi/scsi_lib.c | 4 -
drivers/scsi/scsi_transport_sas.c | 6 +
drivers/scsi/sd.c | 7 +
drivers/usb/core/hcd.c | 17 +-
drivers/usb/host/ohci-sa1111.c | 25 +
include/linux/dma-map-ops.h | 64 ++
include/linux/dma-mapping.h | 10 +
include/linux/iova.h | 2 +
include/linux/pci-p2pdma.h | 27 -
include/linux/scatterlist.h | 69 +++
include/linux/swiotlb.h | 17 +-
include/rdma/ib_verbs.h | 11 +
include/scsi/scsi_host.h | 1 +
kernel/dma/direct.c | 43 +-
kernel/dma/direct.h | 8 +-
kernel/dma/mapping.c | 47 +-
kernel/dma/swiotlb.c | 263 +++++++--
48 files changed, 833 insertions(+), 1694 deletions(-)
delete mode 100644 arch/arm/common/dmabounce.c
delete mode 100644 arch/arm/include/asm/dma-mapping.h
create mode 100644 arch/arm/mach-footbridge/include/mach/dma-direct.h
Powered by blists - more mailing lists