1. 23 Aug, 2024 4 commits
  2. 22 Aug, 2024 30 commits
  3. 21 Aug, 2024 6 commits
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.11-4' of... · 872cf28b
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.11-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver fixes from Ilpo Järvinen:
      
       - ISST: Fix an error-handling corner case
      
       - platform/surface: aggregator: Minor corner case fix and new HW
         support
      
      * tag 'platform-drivers-x86-v6.11-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
        platform/x86: ISST: Fix return value on last invalid resource
        platform/surface: aggregator: Fix warning when controller is destroyed in probe
        platform/surface: aggregator_registry: Add support for Surface Laptop 6
        platform/surface: aggregator_registry: Add fan and thermal sensor support for Surface Laptop 5
        platform/surface: aggregator_registry: Add support for Surface Laptop Studio 2
        platform/surface: aggregator_registry: Add support for Surface Laptop Go 3
        platform/surface: aggregator_registry: Add Support for Surface Pro 10
        platform/x86: asus-wmi: Add quirk for ROG Ally X
      872cf28b
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-6.11-rc5-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · 5c6154ff
      Linus Torvalds authored
      Pull erofs fixes from Gao Xiang:
       "As I mentioned in the merge window pull request, there is a regression
        which could cause system hang due to page migration. The corresponding
        fix landed upstream through MM tree last week (commit 2e6506e1:
        "mm/migrate: fix deadlock in migrate_pages_batch() on large folios"),
        therefore large folios can be safely allowed for compressed inodes and
        stress tests have been running on my fleet for over 20 days without
        any regression. Users have explicitly requested this for months, so
        let's allow large folios for EROFS full cases now for wider testing.
      
        Additionally, there is a fix which addresses invalid memory accesses
        on a failure path triggered by fault injection and two minor cleanups
        to simplify the codebase.
      
        Summary:
      
         - Allow large folios on compressed inodes
      
         - Fix invalid memory accesses if z_erofs_gbuf_growsize() partially
           fails
      
         - Two minor cleanups"
      
      * tag 'erofs-for-6.11-rc5-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: fix out-of-bound access when z_erofs_gbuf_growsize() partially fails
        erofs: allow large folios for compressed files
        erofs: get rid of check_layout_compatibility()
        erofs: simplify readdir operation
      5c6154ff
    • Michael Ellerman's avatar
      ata: pata_macio: Use WARN instead of BUG · d4bc0a26
      Michael Ellerman authored
      The overflow/underflow conditions in pata_macio_qc_prep() should never
      happen. But if they do there's no need to kill the system entirely, a
      WARN and failing the IO request should be sufficient and might allow the
      system to keep running.
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      Signed-off-by: default avatarDamien Le Moal <dlemoal@kernel.org>
      d4bc0a26
    • Michael Ellerman's avatar
      ata: pata_macio: Fix DMA table overflow · 822c8020
      Michael Ellerman authored
      Kolbjørn and Jonáš reported that their 32-bit PowerMacs were crashing
      in pata-macio since commit 09fe2bfa ("ata: pata_macio: Fix
      max_segment_size with PAGE_SIZE == 64K").
      
      For example:
      
        kernel BUG at drivers/ata/pata_macio.c:544!
        Oops: Exception in kernel mode, sig: 5 [#1]
        BE PAGE_SIZE=4K MMU=Hash SMP NR_CPUS=2 DEBUG_PAGEALLOC PowerMac
        ...
        NIP pata_macio_qc_prep+0xf4/0x190
        LR  pata_macio_qc_prep+0xfc/0x190
        Call Trace:
          0xc1421660 (unreliable)
          ata_qc_issue+0x14c/0x2d4
          __ata_scsi_queuecmd+0x200/0x53c
          ata_scsi_queuecmd+0x50/0xe0
          scsi_queue_rq+0x788/0xb1c
          __blk_mq_issue_directly+0x58/0xf4
          blk_mq_plug_issue_direct+0x8c/0x1b4
          blk_mq_flush_plug_list.part.0+0x584/0x5e0
          __blk_flush_plug+0xf8/0x194
          __submit_bio+0x1b8/0x2e0
          submit_bio_noacct_nocheck+0x230/0x304
          btrfs_work_helper+0x200/0x338
          process_one_work+0x1a8/0x338
          worker_thread+0x364/0x4c0
          kthread+0x100/0x104
          start_kernel_thread+0x10/0x14
      
      That commit increased max_segment_size to 64KB, with the justification
      that the SCSI core was already using that size when PAGE_SIZE == 64KB,
      and that there was existing logic to split over-sized requests.
      
      However with a sufficiently large request, the splitting logic causes
      each sg to be split into two commands in the DMA table, leading to
      overflow of the DMA table, triggering the BUG_ON().
      
      With default settings the bug doesn't trigger, because the request size
      is limited by max_sectors_kb == 1280, however max_sectors_kb can be
      increased, and apparently some distros do that by default using udev
      rules.
      
      Fix the bug for 4KB kernels by reverting to the old max_segment_size.
      
      For 64KB kernels the sg_tablesize needs to be halved, to allow for the
      possibility that each sg will be split into two.
      
      Fixes: 09fe2bfa ("ata: pata_macio: Fix max_segment_size with PAGE_SIZE == 64K")
      Cc: stable@vger.kernel.org # v6.10+
      Reported-by: default avatarKolbjørn Barmen <linux-ppc@kolla.no>
      Closes: https://lore.kernel.org/all/62d248bb-e97a-25d2-bcf2-9160c518cae5@kolla.no/Reported-by: default avatarJonáš Vidra <vidra@ufal.mff.cuni.cz>
      Closes: https://lore.kernel.org/all/3b6441b8-06e6-45da-9e55-f92f2c86933e@ufal.mff.cuni.cz/Tested-by: default avatarKolbjørn Barmen <linux-ppc@kolla.no>
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      Signed-off-by: default avatarDamien Le Moal <dlemoal@kernel.org>
      822c8020
    • Linus Torvalds's avatar
      Merge tag '6.11-rc4-server-fixes' of git://git.samba.org/ksmbd · b311c1b4
      Linus Torvalds authored
      Pull smb server fixes from Steve French:
      
       - important reconnect fix
      
       - fix for memcpy issues on mount
      
       - two minor cleanup patches
      
      * tag '6.11-rc4-server-fixes' of git://git.samba.org/ksmbd:
        ksmbd: Replace one-element arrays with flexible-array members
        ksmbd: fix spelling mistakes in documentation
        ksmbd: fix race condition between destroy_previous_session() and smb2 operations()
        ksmbd: Use unsafe_memcpy() for ntlm_negotiate
      b311c1b4
    • Jakub Kicinski's avatar
      Merge branch 'mptcp-pm-fix-ids-not-being-reusable' · 0d76fc7e
      Jakub Kicinski authored
      Matthieu Baerts says:
      
      ====================
      mptcp: pm: fix IDs not being reusable
      
      Here are more fixes for the MPTCP in-kernel path-manager. In this
      series, the fixes are around the endpoint IDs not being reusable for
      on-going connections when re-creating endpoints with previously used IDs.
      
      - Patch 1 fixes this case for endpoints being used to send ADD_ADDR.
        Patch 2 validates this fix. The issue is present since v5.10.
      
      - Patch 3 fixes this case for endpoints being used to establish new
        subflows. Patch 4 validates this fix. The issue is present since v5.10.
      
      - Patch 5 fixes this case when all endpoints are flushed. Patch 6
        validates this fix. The issue is present since v5.13.
      
      - Patch 7 removes a helper that is confusing, and introduced in v5.10.
        It helps simplifying the next patches.
      
      - Patch 8 makes sure a 'subflow' counter is only decremented when
        removing a 'subflow' endpoint. Can be backported up to v5.13.
      
      - Patch 9 is similar, but for a 'signal' counter. Can be backported up
        to v5.10.
      
      - Patch 10 checks the last max accepted ADD_ADDR limit before accepting
        new ADD_ADDR. For v5.10 as well.
      
      - Patch 11 removes a wrong restriction for the userspace PM, added
        during a refactoring in v6.5.
      
      - Patch 12 makes sure the fullmesh mode sets the ID 0 when a new subflow
        using the source address of the initial subflow is created. Patch 13
        covers this case. This issue is present since v5.15.
      
      - Patch 14 avoid possible UaF when selecting an address from the
        endpoints list.
      ====================
      
      Link: https://patch.msgid.link/20240819-net-mptcp-pm-reusing-id-v1-0-38035d40de5b@kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      0d76fc7e