Skip to content
Permalink
Georgi-Djakov/…
Switch branches/tags

Commits on Oct 13, 2021

  1. iommu/iova: Add support for IOVA max alignment tuning

    IOVAs are aligned to the smallest PAGE_SIZE order, where the requested
    IOVA can fit. But this might not work for all use-cases. It can cause
    IOVA fragmentation in some multimedia and 8K video use-cases that may
    require larger buffers to be allocated and mapped.
    
    When the above allocation pattern is used with the current alignment
    scheme, the IOVA space could be quickly exhausted for 32bit devices.
    
    In order to get better IOVA space utilization and reduce fragmentation,
    a new kernel command line parameter is introduced to make the alignment
    limit configurable by the user during boot.
    
    Signed-off-by: Georgi Djakov <quic_c_gdjako@quicinc.com>
    Georgi Djakov authored and intel-lab-lkp committed Oct 13, 2021

Commits on Sep 29, 2021

  1. iommu/amd: Use report_iommu_fault()

    This patch makes iommu/amd call report_iommu_fault() when an I/O page
    fault occurs, which has two effects:
    
    1) It allows device drivers to register a callback to be notified of
       I/O page faults, via the iommu_set_fault_handler() API.
    
    2) It triggers the io_page_fault tracepoint in report_iommu_fault()
       when an I/O page fault occurs.
    
    The latter point is the main aim of this patch, as it allows
    rasdaemon-like daemons to be notified of I/O page faults, and to
    possibly initiate corrective action in response.
    
    A number of other IOMMU drivers already use report_iommu_fault(), and
    I/O page faults on those IOMMUs therefore already trigger this
    tracepoint -- but this isn't yet the case for AMD-Vi and Intel DMAR.
    
    The AMD IOMMU specification suggests that the bit in an I/O page fault
    event log entry that signals whether an I/O page fault was for a read
    request or for a write request is only meaningful when the faulting
    access was to a present page, but some testing on a Ryzen 3700X suggests
    that this bit encodes the correct value even for I/O page faults to
    non-present pages, and therefore, this patch passes the R/W information
    up the stack even for I/O page faults to non-present pages.
    
    Signed-off-by: Lennert Buytenhek <buytenh@arista.com>
    Link: https://lore.kernel.org/r/YVLyBW97vZLpOaAp@wantstofly.org
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    buytenh authored and joergroedel committed Sep 29, 2021
  2. iommu/dma: Account for min_align_mask w/swiotlb

    Pass the non-aligned size to __iommu_dma_map when using swiotlb bounce
    buffers in iommu_dma_map_page, to account for min_align_mask.
    
    To deal with granule alignment, __iommu_dma_map maps iova_align(size +
    iova_off) bytes starting at phys - iova_off. If iommu_dma_map_page
    passes aligned size when using swiotlb, then this becomes
    iova_align(iova_align(orig_size) + iova_off). Normally iova_off will be
    zero when using swiotlb. However, this is not the case for devices that
    set min_align_mask. When iova_off is non-zero, __iommu_dma_map ends up
    mapping an extra page at the end of the buffer. Beyond just being a
    security issue, the extra page is not cleaned up by __iommu_dma_unmap.
    This causes problems when the IOVA is reused, due to collisions in the
    iommu driver.  Just passing the original size is sufficient, since
    __iommu_dma_map will take care of granule alignment.
    
    Fixes: 1f221a0 ("swiotlb: respect min_align_mask")
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Link: https://lore.kernel.org/r/20210929023300.335969-8-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021
  3. swiotlb: Support aligned swiotlb buffers

    Add an argument to swiotlb_tbl_map_single that specifies the desired
    alignment of the allocated buffer. This is used by dma-iommu to ensure
    the buffer is aligned to the iova granule size when using swiotlb with
    untrusted sub-granule mappings. This addresses an issue where adjacent
    slots could be exposed to the untrusted device if IO_TLB_SIZE < iova
    granule < PAGE_SIZE.
    
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20210929023300.335969-7-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021
  4. iommu/dma: Check CONFIG_SWIOTLB more broadly

    Introduce a new dev_use_swiotlb function to guard swiotlb code, instead
    of overloading dev_is_untrusted. This allows CONFIG_SWIOTLB to be
    checked more broadly, so the swiotlb related code can be removed more
    aggressively.
    
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Reviewed-by: Robin Murphy <robin.murphy@arm.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20210929023300.335969-6-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021
  5. iommu/dma: Fold _swiotlb helpers into callers

    Fold the _swiotlb helper functions into the respective _page functions,
    since recent fixes have moved all logic from the _page functions to the
    _swiotlb functions.
    
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Robin Murphy <robin.murphy@arm.com>
    Link: https://lore.kernel.org/r/20210929023300.335969-5-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021
  6. iommu/dma: Skip extra sync during unmap w/swiotlb

    Calling the iommu_dma_sync_*_for_cpu functions during unmap can cause
    two copies out of the swiotlb buffer. Do the arch sync directly in
    __iommu_dma_unmap_swiotlb instead to avoid this. This makes the call to
    iommu_dma_sync_sg_for_cpu for untrusted devices in iommu_dma_unmap_sg no
    longer necessary, so move that invocation later in the function.
    
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Robin Murphy <robin.murphy@arm.com>
    Link: https://lore.kernel.org/r/20210929023300.335969-4-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021
  7. iommu/dma: Fix arch_sync_dma for map

    When calling arch_sync_dma, we need to pass it the memory that's
    actually being used for dma. When using swiotlb bounce buffers, this is
    the bounce buffer. Move arch_sync_dma into the __iommu_dma_map_swiotlb
    helper, so it can use the bounce buffer address if necessary.
    
    Now that iommu_dma_map_sg delegates to a function which takes care of
    architectural syncing in the untrusted device case, the call to
    iommu_dma_sync_sg_for_device can be moved so it only occurs for trusted
    devices. Doing the sync for untrusted devices before mapping never
    really worked, since it needs to be able to target swiotlb buffers.
    
    This also moves the architectural sync to before the call to
    __iommu_dma_map, to guarantee that untrusted devices can't see stale
    data they shouldn't see.
    
    Fixes: 82612d6 ("iommu: Allow the iommu/dma api to use bounce buffers")
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Robin Murphy <robin.murphy@arm.com>
    Link: https://lore.kernel.org/r/20210929023300.335969-3-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021
  8. iommu/dma: Fix sync_sg with swiotlb

    The is_swiotlb_buffer function takes the physical address of the swiotlb
    buffer, not the physical address of the original buffer. The sglist
    contains the physical addresses of the original buffer, so for the
    sync_sg functions to work properly when a bounce buffer might have been
    used, we need to use iommu_iova_to_phys to look up the physical address.
    This is what sync_single does, so call that function on each sglist
    segment.
    
    The previous code mostly worked because swiotlb does the transfer on map
    and unmap. However, any callers which use DMA_ATTR_SKIP_CPU_SYNC with
    sglists or which call sync_sg would not have had anything copied to the
    bounce buffer.
    
    Fixes: 82612d6 ("iommu: Allow the iommu/dma api to use bounce buffers")
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Reviewed-by: Robin Murphy <robin.murphy@arm.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20210929023300.335969-2-stevensd@google.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    David Stevens authored and joergroedel committed Sep 29, 2021

Commits on Sep 28, 2021

  1. iommu/mediatek: Fix out-of-range warning with clang

    clang-14 notices that a comparison is never true when
    CONFIG_PHYS_ADDR_T_64BIT is disabled:
    
    drivers/iommu/mtk_iommu.c:553:34: error: result of comparison of constant 5368709120 with expression of type 'phys_addr_t' (aka 'unsigned int') is always false [-Werror,-Wtautological-constant-out-of-range-compare]
            if (dom->data->enable_4GB && pa >= MTK_IOMMU_4GB_MODE_REMAP_BASE)
                                         ~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Add an explicit check for the type of the variable to skip the check
    and the warning in that case.
    
    Fixes: b4dad40 ("iommu/mediatek: Adjust the PA for the 4GB Mode")
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Reviewed-by: Yong Wu <yong.wu@mediatek.com>
    Link: https://lore.kernel.org/r/20210927121857.941160-1-arnd@kernel.org
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    arndb authored and joergroedel committed Sep 28, 2021
  2. iommu/dart: Clear sid2group entry when a group is freed

    sid2groups keeps track of which stream id combinations belong to a
    iommu_group to assign those correctly to devices.
    When a iommu_group is freed a stale pointer will however remain in
    sid2groups. This prevents devices with the same stream id combination
    to ever be attached again (see below).
    Fix that by creating a shadow copy of the stream id configuration
    when a group is allocated for the first time and clear the sid2group
    entry when that group is freed.
    
      # echo 1 >/sys/bus/pci/devices/0000\:03\:00.0/remove
      pci 0000:03:00.0: Removing from iommu group 1
      # echo 1 >/sys/bus/pci/rescan
      [...]
      pci 0000:03:00.0: BAR 0: assigned [mem 0x6a0000000-0x6a000ffff 64bit pref]
      pci 0000:03:00.0: BAR 2: assigned [mem 0x6a0010000-0x6a001ffff 64bit pref]
      pci 0000:03:00.0: BAR 6: assigned [mem 0x6c0100000-0x6c01007ff pref]
      tg3 0000:03:00.0: Failed to add to iommu group 1: -2
      [...]
    
    Fixes: 46d1fb0 ("iommu/dart: Add DART iommu driver")
    Reported-by: Marc Zyngier <maz@kernel.org>
    Signed-off-by: Sven Peter <sven@svenpeter.dev>
    Tested-by: Marc Zyngier <maz@kernel.org>
    Link: https://lore.kernel.org/r/20210924134502.15589-1-sven@svenpeter.dev
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    svenpeter42 authored and joergroedel committed Sep 28, 2021
  3. iommu/ipmmu-vmsa: Hook up r8a77980 DT matching code

    Add r8a77980 (R-Car V3H) to the list of supported devices. The hardware
    is the same as on already-supportred V3M and other R-Car Gen3 chips.
    
    Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com>
    Link: https://lore.kernel.org/r/20210923191115.22864-1-nikita.yoush@cogentembedded.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    nikita-yoush authored and joergroedel committed Sep 28, 2021
  4. iommu/vt-d: Drop "0x" prefix from PCI bus & device addresses

    719a193 ("iommu/vt-d: Tweak the description of a DMA fault") changed
    the DMA fault reason from hex to decimal.  It also added "0x" prefixes to
    the PCI bus/device, e.g.,
    
      - DMAR: [INTR-REMAP] Request device [00:00.5]
      + DMAR: [INTR-REMAP] Request device [0x00:0x00.5]
    
    These no longer match dev_printk() and other similar messages in
    dmar_match_pci_path() and dmar_acpi_insert_dev_scope().
    
    Drop the "0x" prefixes from the bus and device addresses.
    
    Fixes: 719a193 ("iommu/vt-d: Tweak the description of a DMA fault")
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    Link: https://lore.kernel.org/r/20210903193711.483999-1-helgaas@kernel.org
    Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
    Link: https://lore.kernel.org/r/20210922054726.499110-2-baolu.lu@linux.intel.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    bjorn-helgaas authored and joergroedel committed Sep 28, 2021
  5. iommu/dart: Remove iommu_flush_ops

    apple_dart_tlb_flush_{all,walk} expect to get a struct apple_dart_domain
    but instead get a struct iommu_domain right now. This breaks those two
    functions and can lead to kernel panics like the one below.
    DART can only invalidate the entire TLB and apple_dart_iotlb_sync will
    already flush everything. There's no need to do that again inside those
    two functions. Let's just drop them.
    
      pci 0000:03:00.0: Removing from iommu group 1
      Unable to handle kernel paging request at virtual address 0000000100000023
      [...]
      Call trace:
       _raw_spin_lock_irqsave+0x54/0xbc
       apple_dart_hw_stream_command.constprop.0+0x2c/0x130
       apple_dart_tlb_flush_all+0x48/0x90
       free_io_pgtable_ops+0x40/0x70
       apple_dart_domain_free+0x2c/0x44
       iommu_group_release+0x68/0xac
       kobject_cleanup+0x4c/0x1fc
       kobject_cleanup+0x14c/0x1fc
       kobject_put+0x64/0x84
       iommu_group_remove_device+0x110/0x180
       iommu_release_device+0x50/0xa0
      [...]
    
    Fixes: 46d1fb0 ("iommu/dart: Add DART iommu driver")
    Reported-by: Marc Zyngier <maz@kernel.org>
    Signed-off-by: Sven Peter <sven@svenpeter.dev>
    Acked-by: Marc Zyngier <maz@kernel.org>
    Tested-by: Marc Zyngier <maz@kernel.org>
    Link: https://lore.kernel.org/r/20210921153934.35647-1-sven@svenpeter.dev
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    svenpeter42 authored and joergroedel committed Sep 28, 2021
  6. iommu/dma: Unexport IOVA cookie management

    IOVA cookies are now got and put by core code, so we no longer need to
    export these to modular drivers. The export for getting MSI cookies
    stays, since VFIO can still be a module, but it was already relying on
    someone else putting them, so that aspect is unaffected.
    
    Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
    Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
    Signed-off-by: Robin Murphy <robin.murphy@arm.com>
    Link: https://lore.kernel.org/r/ef89db54a27df7d8bc0af094c7d7b204fd61774c.1631531973.git.robin.murphy@arm.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    rmurphy-arm authored and joergroedel committed Sep 28, 2021
  7. iommu/dart: Clean up IOVA cookie crumbs

    The addition of the DART driver crossed over with moving IOVA cookie
    management into core code; clean up the now-unnecessary remnants here.
    
    Acked-by: Sven Peter <sven@svenpeter.dev>
    Tested-by: Sven Peter <sven@svenpeter.dev>
    Signed-off-by: Robin Murphy <robin.murphy@arm.com>
    Link: https://lore.kernel.org/r/edb72b4965baa8999dd70b8294785d6deebd4183.1631531973.git.robin.murphy@arm.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    rmurphy-arm authored and joergroedel committed Sep 28, 2021
  8. iommu/ipmmu-vmsa: Add support for r8a779a0

    Add support for r8a779a0 (R-Car V3U). The IPMMU hardware design
    of this SoC differs than others. So, add a new ipmmu_features for it.
    
    Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
    Link: https://lore.kernel.org/r/20210907083020.907648-3-yoshihiro.shimoda.uh@renesas.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    shimoday authored and joergroedel committed Sep 28, 2021
  9. dt-bindings: iommu: renesas,ipmmu-vmsa: add r8a779a0 support

    Add support for r8a779a0 (R-Car V3U).
    
    Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    Acked-by: Rob Herring <robh@kernel.org>
    Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
    Link: https://lore.kernel.org/r/20210907083020.907648-2-yoshihiro.shimoda.uh@renesas.com
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    shimoday authored and joergroedel committed Sep 28, 2021

Commits on Sep 26, 2021

  1. Linux 5.15-rc3

    torvalds committed Sep 26, 2021
  2. Merge tag '5.15-rc2-ksmbd-fixes' of git://git.samba.org/ksmbd

    Pull ksmbd fixes from Steve French:
     "Five fixes for the ksmbd kernel server, including three security
      fixes:
    
       - remove follow symlinks support
    
       - use LOOKUP_BENEATH to prevent out of share access
    
       - SMB3 compounding security fix
    
       - fix for returning the default streams correctly, fixing a bug when
         writing ppt or doc files from some clients
    
       - logging more clearly that ksmbd is experimental (at module load
         time)"
    
    * tag '5.15-rc2-ksmbd-fixes' of git://git.samba.org/ksmbd:
      ksmbd: use LOOKUP_BENEATH to prevent the out of share access
      ksmbd: remove follow symlinks support
      ksmbd: check protocol id in ksmbd_verify_smb_message()
      ksmbd: add default data stream name in FILE_STREAM_INFORMATION
      ksmbd: log that server is experimental at module load
    torvalds committed Sep 26, 2021
  3. Merge tag 'edac_urgent_for_v5.15_rc3' of git://git.kernel.org/pub/scm…

    …/linux/kernel/git/ras/ras
    
    Pull EDAC fixes from Borislav Petkov:
     "Fix two EDAC drivers using the wrong value type for the DIMM mode"
    
    * tag 'edac_urgent_for_v5.15_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
      EDAC/dmc520: Assign the proper type to dimm->edac_mode
      EDAC/synopsys: Fix wrong value type assignment for edac_mode
    torvalds committed Sep 26, 2021
  4. Merge tag 'thermal-v5.15-rc3' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/thermal/linux
    
    Pull thermal fixes from Daniel Lezcano:
    
     - Fix thermal shutdown after a suspend/resume due to a wrong TCC value
       restored on Intel platform (Antoine Tenart)
    
     - Fix potential buffer overflow when building the list of policies. The
       buffer size is not updated after writing to it (Dan Carpenter)
    
     - Fix wrong check against IS_ERR instead of NULL (Ansuel Smith)
    
    * tag 'thermal-v5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux:
      thermal/drivers/tsens: Fix wrong check for tzd in irq handlers
      thermal/core: Potential buffer overflow in thermal_build_list_of_policies()
      thermal/drivers/int340x: Do not set a wrong tcc offset on resume
    torvalds committed Sep 26, 2021
  5. Merge tag 'x86-urgent-2021-09-26' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/tip/tip
    
    Pull x86 fixes from Thomas Gleixner:
     "A set of fixes for X86:
    
       - Prevent sending the wrong signal when protection keys are enabled
         and the kernel handles a fault in the vsyscall emulation.
    
       - Invoke early_reserve_memory() before invoking e820_memory_setup()
         which is required to make the Xen dom0 e820 hooks work correctly.
    
       - Use the correct data type for the SETZ operand in the EMQCMDS
         instruction wrapper.
    
       - Prevent undefined behaviour to the potential unaligned accesss in
         the instruction decoder library"
    
    * tag 'x86-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/insn, tools/x86: Fix undefined behavior due to potential unaligned accesses
      x86/asm: Fix SETZ size enqcmds() build failure
      x86/setup: Call early_reserve_memory() earlier
      x86/fault: Fix wrong signal when vsyscall fails with pkey
    torvalds committed Sep 26, 2021
  6. Merge tag 'timers-urgent-2021-09-26' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull timer fix from Thomas Gleixner:
     "A single fix for the recently introduced regression in posix CPU
      timers which failed to stop the timer when requested. That caused
      unexpected signals to be sent to the process/thread causing
      malfunction"
    
    * tag 'timers-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      posix-cpu-timers: Prevent spuriously armed 0-value itimer
    torvalds committed Sep 26, 2021
  7. Merge tag 'irq-urgent-2021-09-26' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/tip/tip
    
    Pull irq fixes from Thomas Gleixner:
     "A set of fixes for interrupt chip drivers:
    
       - Work around a bad GIC integration on a Renesas platform which can't
         handle byte-sized MMIO access
    
       - Plug a potential memory leak in the GICv4 driver
    
       - Fix a regression in the Armada 370-XP IPI code which was caused by
         issuing EOI instack of ACK.
    
       - A couple of small fixes here and there"
    
    * tag 'irq-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      irqchip/gic: Work around broken Renesas integration
      irqchip/renesas-rza1: Use semicolons instead of commas
      irqchip/gic-v3-its: Fix potential VPE leak on error
      irqchip/goldfish-pic: Select GENERIC_IRQ_CHIP to fix build
      irqchip/mbigen: Repair non-kernel-doc notation
      irqdomain: Change the type of 'size' in __irq_domain_add() to be consistent
      irqchip/armada-370-xp: Fix ack/eoi breakage
      Documentation: Fix irq-domain.rst build warning
    torvalds committed Sep 26, 2021

Commits on Sep 25, 2021

  1. Merge branch 'akpm' (patches from Andrew)

    Merge misc fixes from Andrew Morton:
     "16 patches.
    
      Subsystems affected by this patch series: xtensa, sh, ocfs2, scripts,
      lib, and mm (memory-failure, kasan, damon, shmem, tools, pagecache,
      debug, and pagemap)"
    
    * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
      mm: fix uninitialized use in overcommit_policy_handler
      mm/memory_failure: fix the missing pte_unmap() call
      kasan: always respect CONFIG_KASAN_STACK
      sh: pgtable-3level: fix cast to pointer from integer of different size
      mm/debug: sync up latest migrate_reason to migrate_reason_names
      mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN
      mm: fs: invalidate bh_lrus for only cold path
      lib/zlib_inflate/inffast: check config in C to avoid unused function warning
      tools/vm/page-types: remove dependency on opt_file for idle page tracking
      scripts/sorttable: riscv: fix undeclared identifier 'EM_RISCV' error
      ocfs2: drop acl cache for directories too
      mm/shmem.c: fix judgment error in shmem_is_huge()
      xtensa: increase size of gcc stack frame check
      mm/damon: don't use strnlen() with known-bogus source length
      kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS
      mm, hwpoison: add is_free_buddy_page() in HWPoisonHandlable()
    torvalds committed Sep 25, 2021
  2. Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/jejb/scsi
    
    Pull SCSI fixes from James Bottomley:
     "Thirty-three fixes, I'm afraid.
    
      Essentially the build up from the last couple of weeks while I've been
      dealling with Linux Plumbers conference infrastructure issues. It's
      mostly the usual assortment of spelling fixes and minor corrections.
    
      The only core relevant changes are to the sd driver to reduce the spin
      up message spew and fix a small memory leak on the freeing path"
    
    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (33 commits)
      scsi: ses: Retry failed Send/Receive Diagnostic commands
      scsi: target: Fix spelling mistake "CONFLIFT" -> "CONFLICT"
      scsi: lpfc: Fix gcc -Wstringop-overread warning, again
      scsi: lpfc: Use correct scnprintf() limit
      scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn()
      scsi: core: Remove 'current_tag'
      scsi: acornscsi: Remove tagged queuing vestiges
      scsi: fas216: Kill scmd->tag
      scsi: qla2xxx: Restore initiator in dual mode
      scsi: ufs: core: Unbreak the reset handler
      scsi: sd_zbc: Support disks with more than 2**32 logical blocks
      scsi: ufs: core: Revert "scsi: ufs: Synchronize SCSI and UFS error handling"
      scsi: bsg: Fix device unregistration
      scsi: sd: Make sd_spinup_disk() less noisy
      scsi: ufs: ufs-pci: Fix Intel LKF link stability
      scsi: mpt3sas: Clean up some inconsistent indenting
      scsi: megaraid: Clean up some inconsistent indenting
      scsi: sr: Fix spelling mistake "does'nt" -> "doesn't"
      scsi: Remove SCSI CDROM MAINTAINERS entry
      scsi: megaraid: Fix Coccinelle warning
      ...
    torvalds committed Sep 25, 2021
  3. Merge tag 'io_uring-5.15-2021-09-25' of git://git.kernel.dk/linux-block

    Pull io_uring fixes from Jens Axboe:
     "This one looks a bit bigger than it is, but that's mainly because 2/3
      of it is enabling IORING_OP_CLOSE to close direct file descriptors.
    
      We've had a few folks using them and finding it confusing that the way
      to close them is through using -1 for file update, this just brings
      API symmetry for direct descriptors. Hence I think we should just do
      this now and have a better API for 5.15 release. There's some room for
      de-duplicating the close code, but we're leaving that for the next
      merge window.
    
      Outside of that, just small fixes:
    
       - Poll race fixes (Hao)
    
       - io-wq core dump exit fix (me)
    
       - Reschedule around potentially intensive tctx and buffer iterators
         on teardown (me)
    
       - Fix for always ending up punting files update to io-wq (me)
    
       - Put the provided buffer meta data under memcg accounting (me)
    
       - Tweak for io_write(), removing dead code that was added with the
         iterator changes in this release (Pavel)"
    
    * tag 'io_uring-5.15-2021-09-25' of git://git.kernel.dk/linux-block:
      io_uring: make OP_CLOSE consistent with direct open
      io_uring: kill extra checks in io_write()
      io_uring: don't punt files update to io-wq unconditionally
      io_uring: put provided buffer meta data under memcg accounting
      io_uring: allow conditional reschedule for intensive iterators
      io_uring: fix potential req refcount underflow
      io_uring: fix missing set of EPOLLONESHOT for CQ ring overflow
      io_uring: fix race between poll completion and cancel_hash insertion
      io-wq: ensure we exit if thread group is exiting
    torvalds committed Sep 25, 2021
  4. Merge tag 'block-5.15-2021-09-25' of git://git.kernel.dk/linux-block

    Pull block fixes from Jens Axboe:
    
     - NVMe pull request via Christoph:
          - keep ctrl->namespaces ordered (Christoph Hellwig)
          - fix incorrect h2cdata pdu offset accounting in nvme-tcp (Sagi
            Grimberg)
          - handled updated hw_queues in nvme-fc more carefully (Daniel
            Wagner, James Smart)
    
     - md lock order fix (Christoph)
    
     - fallocate locking fix (Ming)
    
     - blktrace UAF fix (Zhihao)
    
     - rq-qos bio tracking fix (Ming)
    
    * tag 'block-5.15-2021-09-25' of git://git.kernel.dk/linux-block:
      block: hold ->invalidate_lock in blkdev_fallocate
      blktrace: Fix uaf in blk_trace access after removing by sysfs
      block: don't call rq_qos_ops->done_bio if the bio isn't tracked
      md: fix a lock order reversal in md_alloc
      nvme: keep ctrl->namespaces ordered
      nvme-tcp: fix incorrect h2cdata pdu offset accounting
      nvme-fc: remove freeze/unfreeze around update_nr_hw_queues
      nvme-fc: avoid race between time out and tear down
      nvme-fc: update hardware queues before using them
    torvalds committed Sep 25, 2021
  5. Merge tag 'for-linus-5.15b-rc3-tag' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/xen/tip
    
    Pull xen fixes from Juergen Gross:
     "Some minor cleanups and fixes of some theoretical bugs, as well as a
      fix of a bug introduced in 5.15-rc1"
    
    * tag 'for-linus-5.15b-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
      xen/x86: fix PV trap handling on secondary processors
      xen/balloon: fix balloon kthread freezing
      swiotlb-xen: this is PV-only on x86
      xen/pci-swiotlb: reduce visibility of symbols
      PCI: only build xen-pcifront in PV-enabled environments
      swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests
      Xen/gntdev: don't ignore kernel unmapping error
      xen/x86: drop redundant zeroing from cpu_initialize_context()
    torvalds committed Sep 25, 2021
  6. Merge tag 'linux-kselftest-fixes-5.15-rc3' of git://git.kernel.org/pu…

    …b/scm/linux/kernel/git/shuah/linux-kselftest
    
    Pull Kselftest fixes from Shuah Khan:
    
     - fix to Kselftest common framework header install to run before other
       targets for it work correctly in parallel build case.
    
     - fixes to kvm test to not ignore fscanf() returns which could result
       in inconsistent test behavior and failures.
    
    * tag 'linux-kselftest-fixes-5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
      selftests: kvm: fix get_run_delay() ignoring fscanf() return warn
      selftests: kvm: move get_run_delay() into lib/test_util
      selftests:kvm: fix get_trans_hugepagesz() ignoring fscanf() return warn
      selftests:kvm: fix get_warnings_count() ignoring fscanf() return warn
      selftests: be sure to make khdr before other targets
    torvalds committed Sep 25, 2021
  7. Merge tag 'erofs-for-5.15-rc3-fixes' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/xiang/erofs
    
    Pull erofs fixes from Gao Xiang:
     "Two bugfixes to fix the 4KiB blockmap chunk format availability and a
      dangling pointer usage. There is also a trivial cleanup to clarify
      compacted_2b if compacted_4b_initial > totalidx.
    
      Summary:
    
       - fix the dangling pointer use in erofs_lookup tracepoint
    
       - fix unsupported chunk format check
    
       - zero out compacted_2b if compacted_4b_initial > totalidx"
    
    * tag 'erofs-for-5.15-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
      erofs: clear compacted_2b if compacted_4b_initial > totalidx
      erofs: fix misbehavior of unsupported chunk format check
      erofs: fix up erofs_lookup tracepoint
    torvalds committed Sep 25, 2021
  8. Merge tag '5.15-rc2-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6

    Pull cifs fixes from Steve French:
     "Six small cifs/smb3 fixes, two for stable:
    
       - important fix for deferred close (found by a git functional test)
         related to attribute caching on close.
    
       - four (two cosmetic, two more serious) small fixes for problems
         pointed out by smatch via Dan Carpenter
    
       - fix for comment formatting problems pointed out by W=1"
    
    * tag '5.15-rc2-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
      cifs: fix incorrect check for null pointer in header_assemble
      smb3: correct server pointer dereferencing check to be more consistent
      smb3: correct smb3 ACL security descriptor
      cifs: Clear modified attribute bit from inode flags
      cifs: Deal with some warnings from W=1
      cifs: fix a sign extension bug
    torvalds committed Sep 25, 2021
  9. Merge tag 'char-misc-5.15-rc3' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/gregkh/char-misc
    
    Pull char/misc driver fixes from Greg KH:
     "Here are some small char and misc driver fixes for 5.15-rc3.
    
      Nothing huge in here, just fixes for a number of small issues that
      have been reported. These include:
    
       - habanalabs race conditions and other bugs fixed
    
       - binder driver fixes
    
       - fpga driver fixes
    
       - coresight build warning fix
    
       - nvmem driver fix
    
       - comedi memory leak fix
    
       - bcm-vk tty race fix
    
       - other tiny driver fixes
    
      All of these have been in linux-next for a while with no reported
      issues"
    
    * tag 'char-misc-5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (21 commits)
      comedi: Fix memory leak in compat_insnlist()
      nvmem: NVMEM_NINTENDO_OTP should depend on WII
      misc: bcm-vk: fix tty registration race
      fpga: dfl: Avoid reads to AFU CSRs during enumeration
      fpga: machxo2-spi: Fix missing error code in machxo2_write_complete()
      fpga: machxo2-spi: Return an error on failure
      habanalabs: expose a single cs seq in staged submissions
      habanalabs: fix wait offset handling
      habanalabs: rate limit multi CS completion errors
      habanalabs/gaudi: fix LBW RR configuration
      habanalabs: Fix spelling mistake "FEADBACK" -> "FEEDBACK"
      habanalabs: fail collective wait when not supported
      habanalabs/gaudi: use direct MSI in single mode
      habanalabs: fix kernel OOPs related to staged cs
      habanalabs: fix potential race in interrupt wait ioctl
      mcb: fix error handling in mcb_alloc_bus()
      misc: genwqe: Fixes DMA mask setting
      coresight: syscfg: Fix compiler warning
      nvmem: core: Add stubs for nvmem_cell_read_variable_le_u32/64 if !CONFIG_NVMEM
      binder: make sure fd closes complete
      ...
    torvalds committed Sep 25, 2021
Older