1. 28 7月, 2018 3 次提交
    • R
      dma-mapping: Generalise dma_32bit_limit flag · f07d141f
      Robin Murphy 提交于
      Whilst the notion of an upstream DMA restriction is most commonly seen
      in PCI host bridges saddled with a 32-bit native interface, a more
      general version of the same issue can exist on complex SoCs where a bus
      or point-to-point interconnect link from a device's DMA master interface
      to another component along the path to memory (often an IOMMU) may carry
      fewer address bits than the interfaces at both ends nominally support.
      In order to properly deal with this, the first step is to expand the
      dma_32bit_limit flag into an arbitrary mask.
      
      To minimise the impact on existing code, we'll make sure to only
      consider this new mask valid if set. That makes sense anyway, since a
      mask of zero would represent DMA not being wired up at all, and that
      would be better handled by not providing valid ops in the first place.
      Signed-off-by: NRobin Murphy <robin.murphy@arm.com>
      Acked-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      f07d141f
    • R
      ACPI/IORT: Support address size limit for root complexes · 5ac65e8c
      Robin Murphy 提交于
      IORT revision D allows PCI root complex nodes to specify a memory
      address size limit equivalently to named components, to help describe
      straightforward integrations which don't really warrant a full-blown
      _DMA method. Now that our headers are up-to-date, plumb it in.
      
      If both _DMA and an address size limit are present, we would always
      expect the former to be a more specific subset of the latter (since it
      makes little sense for a _DMA range to involve bits which IORT says
      aren't wired up), thus we can save calculating an explicit intersection
      of the two effective masks and simply use short-circuit logic instead.
      Reviewed-by: NHanjun Guo <hanjun.guo@linaro.org>
      Signed-off-by: NRobin Murphy <robin.murphy@arm.com>
      Acked-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      Acked-by: NWill Deacon <will.deacon@arm.com>
      Acked-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      5ac65e8c
    • R
      of/platform: Initialise default DMA masks · a5516219
      Robin Murphy 提交于
      When of_dma_configure() was first born in 591c1ee4 ("of: configure
      the platform device dma parameters"), everything DMA-related was
      factored out of of_platform_device_create_pdata() as seemed appropriate
      at the time. However, now that of_dma_configure() has grown into the
      generic handler for processing DMA-related properties from DT for all
      kinds of devices, it is no longer an appropriate place to be doing
      OF-platform-specific business. Since there are still plenty of platform
      drivers not setting their own masks and depending on the bus default,
      let's reinstate that inialisation in the OF-platform code itself, and
      restore the long-standing status quo from 0589342c ("of: set
      dma_mask to point to coherent_dma_mask")
      Signed-off-by: NRobin Murphy <robin.murphy@arm.com>
      Acked-by: NRob Herring <robh@kernel.org>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      a5516219
  2. 25 7月, 2018 3 次提交
  3. 23 7月, 2018 4 次提交
    • L
      Linux 4.18-rc6 · d72e90f3
      Linus Torvalds 提交于
      d72e90f3
    • L
      Merge tag 'nvme-for-4.18' of git://git.infradead.org/nvme · 74413084
      Linus Torvalds 提交于
      Pull NVMe fixes from Christoph Hellwig:
      
       - fix a regression in 4.18 that causes a memory leak on probe failure
         (Keith Bush)
      
       - fix a deadlock in the passthrough ioctl code (Scott Bauer)
      
       - don't enable AENs if not supported (Weiping Zhang)
      
       - fix an old regression in metadata handling in the passthrough ioctl
         code (Roland Dreier)
      
      * tag 'nvme-for-4.18' of git://git.infradead.org/nvme:
        nvme: fix handling of metadata_len for NVME_IOCTL_IO_CMD
        nvme: don't enable AEN if not supported
        nvme: ensure forward progress during Admin passthru
        nvme-pci: fix memory leak on probe failure
      74413084
    • L
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 165ea0d1
      Linus Torvalds 提交于
      Pull vfs fixes from Al Viro:
       "Fix several places that screw up cleanups after failures halfway
        through opening a file (one open-coding filp_clone_open() and getting
        it wrong, two misusing alloc_file()). That part is -stable fodder from
        the 'work.open' branch.
      
        And Christoph's regression fix for uapi breakage in aio series;
        include/uapi/linux/aio_abi.h shouldn't be pulling in the kernel
        definition of sigset_t, the reason for doing so in the first place had
        been bogus - there's no need to expose struct __aio_sigset in
        aio_abi.h at all"
      
      * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        aio: don't expose __aio_sigset in uapi
        ocxlflash_getfile(): fix double-iput() on alloc_file() failures
        cxl_getfile(): fix double-iput() on alloc_file() failures
        drm_mode_create_lease_ioctl(): fix open-coded filp_clone_open()
      165ea0d1
    • A
      alpha: fix osf_wait4() breakage · f88a333b
      Al Viro 提交于
      kernel_wait4() expects a userland address for status - it's only
      rusage that goes as a kernel one (and needs a copyout afterwards)
      
      [ Also, fix the prototype of kernel_wait4() to have that __user
        annotation   - Linus ]
      
      Fixes: 92ebce5a ("osf_wait4: switch to kernel_wait4()")
      Cc: stable@kernel.org # v4.13+
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f88a333b
  4. 22 7月, 2018 16 次提交
  5. 21 7月, 2018 10 次提交
  6. 20 7月, 2018 4 次提交