lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Date:   Wed, 5 Jul 2017 19:09:08 -0700
From:   Christoph Hellwig <hch@...radead.org>
To:     Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     Marek Szyprowski <m.szyprowski@...sung.com>,
        Robin Murphy <robin.murphy@....com>,
        linux-kernel@...r.kernel.org
Subject: [GIT PULL] dma-mapping tree for 4.13-rc1

The following changes since commit 41f1830f5a7af77cf5c86359aba3cbd706687e52:

  Linux 4.12-rc6 (2017-06-19 22:19:37 +0800)

are available in the git repository at:

  git://git.infradead.org/users/hch/dma-mapping.git tags/dma-mapping-4.13

for you to fetch changes up to 1655cf8829d82d367d8fdb5cb58e5885d7d2a391:

  ARM: dma-mapping: Remove traces of NOMMU code (2017-06-30 10:03:11 -0700)

----------------------------------------------------------------
This is the first pull request for the new dma-mapping subsystem

In this new subsystem we'll try to properly maintain all the generic
code related to dma-mapping, and will further consolidate arch code
into common helpers.

This pull request contains:

 - removal of the DMA_ERROR_CODE macro, replacing it with calls
   to ->mapping_error so that the dma_map_ops instances are
   more self contained and can be shared across architectures (me)
 - removal of the ->set_dma_mask method, which duplicates the
   ->dma_capable one in terms of functionality, but requires more
   duplicate code.
 - various updates for the coherent dma pool and related arm code
   (Vladimir)
 - various smaller cleanups (me)

----------------------------------------------------------------
Arnd Bergmann (1):
      crypto: qat - avoid an uninitialized variable warning

Christoph Hellwig (48):
      firmware/ivc: use dma_mapping_error
      ibmveth: properly unwind on init errors
      dmaengine: ioat: don't use DMA_ERROR_CODE
      drm/exynos: don't use DMA_ERROR_CODE
      drm/armada: don't abuse DMA_ERROR_CODE
      iommu/dma: don't rely on DMA_ERROR_CODE
      xen-swiotlb: consolidate xen_swiotlb_dma_ops
      xen-swiotlb: implement ->mapping_error
      c6x: remove DMA_ERROR_CODE
      ia64: remove DMA_ERROR_CODE
      m32r: remove DMA_ERROR_CODE
      microblaze: remove DMA_ERROR_CODE
      openrisc: remove DMA_ERROR_CODE
      sh: remove DMA_ERROR_CODE
      xtensa: remove DMA_ERROR_CODE
      arm64: remove DMA_ERROR_CODE
      hexagon: switch to use ->mapping_error for error reporting
      iommu/amd: implement ->mapping_error
      s390: implement ->mapping_error
      sparc: implement ->mapping_error
      powerpc: implement ->mapping_error
      x86/pci-nommu: implement ->mapping_error
      x86/calgary: implement ->mapping_error
      x86: remove DMA_ERROR_CODE
      arm: implement ->mapping_error
      dma-mapping: remove DMA_ERROR_CODE
      sparc: remove leon_dma_ops
      sparc: remove arch specific dma_supported implementations
      dma-noop: remove dma_supported and mapping_error methods
      dma-virt: remove dma_supported and mapping_error methods
      hexagon: remove arch-specific dma_supported implementation
      hexagon: remove the unused dma_is_consistent prototype
      openrisc: remove arch-specific dma_supported implementation
      arm: remove arch specific dma_supported implementation
      x86: remove arch specific dma_supported implementation
      dma-mapping: remove HAVE_ARCH_DMA_SUPPORTED
      mips/loongson64: implement ->dma_supported instead of ->set_dma_mask
      arm: implement ->dma_supported instead of ->set_dma_mask
      xen-swiotlb: remove xen_swiotlb_set_dma_mask
      tile: remove dma_supported and mapping_error methods
      powerpc/cell: clean up fixed mapping dma_ops initialization
      powerpc/cell: use the dma_supported method for ops switching
      dma-mapping: remove the set_dma_mask method
      powerpc: merge __dma_set_mask into dma_set_mask
      MAINTAINERS: add entry for dma mapping helpers
      au1100fb: remove a bogus dma_free_nonconsistent call
      dma-mapping: remove dmam_free_noncoherent
      dma-mapping: replace dmam_alloc_noncoherent with dmam_alloc_attrs

Vladimir Murzin (7):
      dma: Take into account dma_pfn_offset
      drivers: dma-coherent: Account dma_pfn_offset when used with device tree
      drivers: dma-coherent: Introduce default DMA pool
      drivers: dma-mapping: allow dma_common_mmap() for NOMMU
      ARM: NOMMU: Introduce dma operations for noMMU
      ARM: NOMMU: Set ARM_DMA_MEM_BUFFERABLE for M-class cpus
      ARM: dma-mapping: Remove traces of NOMMU code

 Documentation/DMA-API-HOWTO.txt                    |  31 +--
 .../bindings/reserved-memory/reserved-memory.txt   |   3 +
 Documentation/driver-model/devres.txt              |   3 +-
 MAINTAINERS                                        |  15 ++
 arch/arm/Kconfig                                   |   1 +
 arch/arm/common/dmabounce.c                        |  19 +-
 arch/arm/include/asm/dma-iommu.h                   |   4 +
 arch/arm/include/asm/dma-mapping.h                 |   6 +-
 arch/arm/mm/Kconfig                                |   8 +-
 arch/arm/mm/Makefile                               |   5 +-
 arch/arm/mm/dma-mapping-nommu.c                    | 228 +++++++++++++++++++++
 arch/arm/mm/dma-mapping.c                          |  77 +++----
 arch/arm/xen/mm.c                                  |  17 --
 arch/arm64/include/asm/dma-mapping.h               |   1 -
 arch/arm64/mm/dma-mapping.c                        |   3 +-
 arch/blackfin/Kconfig                              |   1 +
 arch/c6x/include/asm/dma-mapping.h                 |   5 -
 arch/hexagon/include/asm/dma-mapping.h             |   5 -
 arch/hexagon/kernel/dma.c                          |  21 +-
 arch/hexagon/kernel/hexagon_ksyms.c                |   1 -
 arch/ia64/include/asm/dma-mapping.h                |   2 -
 arch/m32r/Kconfig                                  |   1 +
 arch/m32r/include/asm/dma-mapping.h                |   2 -
 arch/m68k/Kconfig                                  |   1 +
 arch/microblaze/Kconfig                            |   1 +
 arch/microblaze/include/asm/dma-mapping.h          |   2 -
 arch/mips/loongson64/common/dma-swiotlb.c          |  19 +-
 arch/openrisc/include/asm/dma-mapping.h            |   9 -
 arch/powerpc/include/asm/dma-mapping.h             |   5 -
 arch/powerpc/include/asm/iommu.h                   |   4 +
 arch/powerpc/kernel/dma-iommu.c                    |   6 +
 arch/powerpc/kernel/dma.c                          |  17 +-
 arch/powerpc/kernel/iommu.c                        |  28 +--
 arch/powerpc/platforms/cell/iommu.c                |  53 ++---
 arch/powerpc/platforms/pseries/vio.c               |   3 +-
 arch/s390/include/asm/dma-mapping.h                |   2 -
 arch/s390/pci/pci_dma.c                            |  18 +-
 arch/sh/Kconfig                                    |   1 +
 arch/sh/include/asm/dma-mapping.h                  |   2 -
 arch/sparc/include/asm/dma-mapping.h               |   8 +-
 arch/sparc/kernel/iommu.c                          |  52 +++--
 arch/sparc/kernel/iommu_common.h                   |   2 +
 arch/sparc/kernel/ioport.c                         |  27 +--
 arch/sparc/kernel/pci_sun4v.c                      |  31 ++-
 arch/tile/kernel/pci-dma.c                         |  30 ---
 arch/x86/include/asm/dma-mapping.h                 |   5 -
 arch/x86/include/asm/iommu.h                       |   2 +
 arch/x86/kernel/amd_gart_64.c                      |   1 +
 arch/x86/kernel/pci-calgary_64.c                   |  25 ++-
 arch/x86/kernel/pci-dma.c                          |   8 +-
 arch/x86/kernel/pci-nommu.c                        |  11 +-
 arch/x86/pci/sta2x11-fixup.c                       |   3 +-
 arch/x86/xen/pci-swiotlb-xen.c                     |  14 --
 arch/xtensa/Kconfig                                |   1 +
 arch/xtensa/include/asm/dma-mapping.h              |   2 -
 drivers/base/dma-coherent.c                        |  74 ++++++-
 drivers/base/dma-mapping.c                         |  60 ++----
 drivers/crypto/qat/qat_common/qat_algs.c           |  40 ++--
 drivers/dma/ioat/init.c                            |  24 +--
 drivers/firmware/tegra/ivc.c                       |   4 +-
 drivers/gpu/drm/armada/armada_fb.c                 |   2 +-
 drivers/gpu/drm/armada/armada_gem.c                |   5 +-
 drivers/gpu/drm/armada/armada_gem.h                |   1 +
 drivers/gpu/drm/exynos/exynos_drm_fb.c             |   4 +-
 drivers/iommu/amd_iommu.c                          |  20 +-
 drivers/iommu/dma-iommu.c                          |  18 +-
 drivers/iommu/intel-iommu.c                        |   3 +
 drivers/net/ethernet/ibm/ibmveth.c                 | 159 +++++++-------
 drivers/video/fbdev/au1100fb.c                     |   4 -
 drivers/video/fbdev/au1200fb.c                     |   5 +-
 drivers/xen/swiotlb-xen.c                          | 113 +++++-----
 include/linux/dma-mapping.h                        |  20 +-
 include/xen/swiotlb-xen.h                          |  62 +-----
 lib/dma-noop.c                                     |  21 +-
 lib/dma-virt.c                                     |  12 --
 75 files changed, 778 insertions(+), 725 deletions(-)
 create mode 100644 arch/arm/mm/dma-mapping-nommu.c

Powered by blists - more mailing lists