1. 28 Aug, 2024 2 commits
  2. 27 Aug, 2024 5 commits
    • Linus Torvalds's avatar
      Merge tag 'livepatching-for-6.11-rc6' of... · 3ec3f5fc
      Linus Torvalds authored
      Merge tag 'livepatching-for-6.11-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching
      
      Pull livepatching fix from Petr Mladek:
       "Selftest regression fix"
      
      * tag 'livepatching-for-6.11-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
        selftests/livepatch: wait for atomic replace to occur
      3ec3f5fc
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v6.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 41594663
      Linus Torvalds authored
      Pull pin control fixes from Linus Walleij:
      
       - Fix the hwirq map and pin offsets in the Qualcomm X1E80100 driver
      
       - Fix the pin range handling in the AT91 driver so it works again
      
       - Fix a NULL-dereference risk in pinctrl single
      
       - Fix a serious biasing bug in the Mediatek driver
      
       - Fix the level trigged IRQ in the StarFive JH7110
      
       - Fix the iomux width in the Rockchip GPIO2-B pin handling
      
      * tag 'pinctrl-v6.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: rockchip: correct RK3328 iomux width flag for GPIO2-B pins
        pinctrl: starfive: jh7110: Correct the level trigger configuration of iev register
        pinctrl: qcom: x1e80100: Fix special pin offsets
        pinctrl: mediatek: common-v2: Fix broken bias-disable for PULL_PU_PD_RSEL_TYPE
        pinctrl: single: fix potential NULL dereference in pcs_get_function()
        pinctrl: at91: make it work with current gpiolib
        pinctrl: qcom: x1e80100: Update PDC hwirq map
      41594663
    • Linus Torvalds's avatar
      Merge tag 'sound-6.11-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 6ace1c7e
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "It became a bit larger collection of fixes than wished at this time,
        but all changes are small and mostly device-specific fixes that should
        be fairly safe to apply.
      
        Majority of fixes are about ASoC for AMD SOF, Cirrus codecs, lpass,
        etc, in addition to the usual HD-audio quirks / fixes"
      
      * tag 'sound-6.11-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (22 commits)
        ALSA: hda: hda_component: Fix mutex crash if nothing ever binds
        ALSA: hda/realtek: support HP Pavilion Aero 13-bg0xxx Mute LED
        ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book3 Ultra
        ASoC: cs-amp-lib: Ignore empty UEFI calibration entries
        ASoC: cs-amp-lib-test: Force test calibration blob entries to be valid
        ALSA: hda/realtek - FIxed ALC285 headphone no sound
        ALSA: hda/realtek - Fixed ALC256 headphone no sound
        ASoC: allow module autoloading for table board_ids
        ASoC: allow module autoloading for table db1200_pids
        ALSA: hda: cs35l56: Don't use the device index as a calibration index
        ALSA: seq: Skip event type filtering for UMP events
        ALSA: hda/realtek: Enable mute/micmute LEDs on HP Laptop 14-ey0xxx
        ASoC: SOF: amd: Fix for acp init sequence
        ASoC: amd: acp: fix module autoloading
        ASoC: mediatek: mt8188: Mark AFE_DAC_CON0 register as volatile
        ASoC: codecs: wcd937x: Fix missing de-assert of reset GPIO
        ASoC: SOF: mediatek: Add missing board compatible
        ASoC: MAINTAINERS: Drop Banajit Goswami from Qualcomm sound drivers
        ASoC: SOF: amd: Fix for incorrect acp error register offsets
        ASoC: SOF: amd: move iram-dram fence register programming sequence
        ...
      6ace1c7e
    • Stefan Berger's avatar
      tpm: ibmvtpm: Call tpm2_sessions_init() to initialize session support · 08d08e2e
      Stefan Berger authored
      Commit d2add27c ("tpm: Add NULL primary creation") introduced
      CONFIG_TCG_TPM2_HMAC. When this option is enabled on ppc64 then the
      following message appears in the kernel log due to a missing call to
      tpm2_sessions_init().
      
      [    2.654549] tpm tpm0: auth session is not active
      
      Add the missing call to tpm2_session_init() to the ibmvtpm driver to
      resolve this issue.
      
      Cc: stable@vger.kernel.org # v6.10+
      Fixes: d2add27c ("tpm: Add NULL primary creation")
      Signed-off-by: default avatarStefan Berger <stefanb@linux.ibm.com>
      Reviewed-by: default avatarJarkko Sakkinen <jarkko@kernel.org>
      Signed-off-by: default avatarJarkko Sakkinen <jarkko@kernel.org>
      08d08e2e
    • Linus Torvalds's avatar
      Merge tag 'vfs-6.11-rc6.fixes' of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs · 3e9bff3b
      Linus Torvalds authored
      Pull vfs fixes from Christian Brauner:
       "VFS:
      
         - Ensure that backing files uses file->f_ops->splice_write() for
           splice
      
        netfs:
      
         - Revert the removal of PG_private_2 from netfs_release_folio() as
           cephfs still relies on this
      
         - When AS_RELEASE_ALWAYS is set on a mapping the folio needs to
           always be invalidated during truncation
      
         - Fix losing untruncated data in a folio by making letting
           netfs_release_folio() return false if the folio is dirty
      
         - Fix trimming of streaming-write folios in netfs_inval_folio()
      
         - Reset iterator before retrying a short read
      
         - Fix interaction of streaming writes with zero-point tracker
      
        afs:
      
         - During truncation afs currently calls truncate_setsize() which sets
           i_size, expands the pagecache and truncates it. The first two
           operations aren't needed because they will have already been done.
           So call truncate_pagecache() instead and skip the redundant parts
      
        overlayfs:
      
         - Fix checking of the number of allowed lower layers so 500 layers
           can actually be used instead of just 499
      
         - Add missing '\n' to pr_err() output
      
         - Pass string to ovl_parse_layer() and thus allow it to be used for
           Opt_lowerdir as well
      
        pidfd:
      
         - Revert blocking the creation of pidfds for kthread as apparently
           userspace relies on this. Specifically, it breaks systemd during
           shutdown
      
        romfs:
      
         - Fix romfs_read_folio() to use the correct offset with
           folio_zero_tail()"
      
      * tag 'vfs-6.11-rc6.fixes' of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs:
        netfs: Fix interaction of streaming writes with zero-point tracker
        netfs: Fix missing iterator reset on retry of short read
        netfs: Fix trimming of streaming-write folios in netfs_inval_folio()
        netfs: Fix netfs_release_folio() to say no if folio dirty
        afs: Fix post-setattr file edit to do truncation correctly
        mm: Fix missing folio invalidation calls during truncation
        ovl: ovl_parse_param_lowerdir: Add missed '\n' for pr_err
        ovl: fix wrong lowerdir number check for parameter Opt_lowerdir
        ovl: pass string to ovl_parse_layer()
        backing-file: convert to using fops->splice_write
        Revert "pidfd: prevent creation of pidfds for kthreads"
        romfs: fix romfs_read_folio()
        netfs, ceph: Partially revert "netfs: Replace PG_fscache by setting folio->private and marking dirty"
      3e9bff3b
  3. 26 Aug, 2024 3 commits
  4. 25 Aug, 2024 10 commits
    • YOUNGJIN JOO's avatar
      ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book3 Ultra · 44ceabde
      YOUNGJIN JOO authored
      144d:c1cc requires the same workaround to enable the speaker amp
      as other Samsung models with the ALC298 codec.
      Signed-off-by: default avatarYOUNGJIN JOO <neoelec@gmail.com>
      Cc: <stable@vger.kernel.org>
      Link: https://patch.msgid.link/20240825092515.28728-1-neoelec@gmail.comSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      44ceabde
    • David Howells's avatar
      cifs: Fix FALLOC_FL_PUNCH_HOLE support · 416871f4
      David Howells authored
      The cifs filesystem doesn't quite emulate FALLOC_FL_PUNCH_HOLE correctly
      (note that due to lack of protocol support, it can't actually implement it
      directly).  Whilst it will (partially) invalidate dirty folios in the
      pagecache, it doesn't write them back first, and so the EOF marker on the
      server may be lower than inode->i_size.
      
      This presents a problem, however, as if the punched hole invalidates the
      tail of the locally cached dirty data, writeback won't know it needs to
      move the EOF over to account for the hole punch (which isn't supposed to
      move the EOF).  We could just write zeroes over the punched out region of
      the pagecache and write that back - but this is supposed to be a
      deallocatory operation.
      
      Fix this by manually moving the EOF over on the server after the operation
      if the hole punched would corrupt it.
      
      Note that the FSCTL_SET_ZERO_DATA RPC and the setting of the EOF should
      probably be compounded to stop a third party interfering (or, at least,
      massively reduce the chance).
      
      This was reproducible occasionally by using fsx with the following script:
      
      	truncate 0x0 0x375e2 0x0
      	punch_hole 0x2f6d3 0x6ab5 0x375e2
      	truncate 0x0 0x3a71f 0x375e2
      	mapread 0xee05 0xcf12 0x3a71f
      	write 0x2078e 0x5604 0x3a71f
      	write 0x3ebdf 0x1421 0x3a71f *
      	punch_hole 0x379d0 0x8630 0x40000 *
      	mapread 0x2aaa2 0x85b 0x40000
      	fallocate 0x1b401 0x9ada 0x40000
      	read 0x15f2 0x7d32 0x40000
      	read 0x32f37 0x7a3b 0x40000 *
      
      The second "write" should extend the EOF to 0x40000, and the "punch_hole"
      should operate inside of that - but that depends on whether the VM gets in
      and writes back the data first.  If it doesn't, the file ends up 0x3a71f in
      size, not 0x40000.
      
      Fixes: 31742c5a ("enable fallocate punch hole ("fallocate -p") for SMB3")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Steve French <sfrench@samba.org>
      cc: Paulo Alcantara <pc@manguebit.com>
      cc: Shyam Prasad N <nspmangalore@gmail.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-cifs@vger.kernel.org
      cc: netfs@lists.linux.dev
      Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
      416871f4
    • Stefan Metzmacher's avatar
      smb/client: fix rdma usage in smb2_async_writev() · 017d1701
      Stefan Metzmacher authored
      rqst.rq_iter needs to be truncated otherwise we'll
      also send the bytes into the stream socket...
      
      This is the logic behind rqst.rq_npages = 0, which was removed in
      "cifs: Change the I/O paths to use an iterator rather than a page list"
      (d08089f6).
      
      Cc: stable@vger.kernel.org
      Fixes: d08089f6 ("cifs: Change the I/O paths to use an iterator rather than a page list")
      Reviewed-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarStefan Metzmacher <metze@samba.org>
      Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
      017d1701
    • Stefan Metzmacher's avatar
      smb/client: remove unused rq_iter_size from struct smb_rqst · b608e2c3
      Stefan Metzmacher authored
      Reviewed-by: default avatarDavid Howells <dhowells@redhat.com>
      Fixes: d08089f6 ("cifs: Change the I/O paths to use an iterator rather than a page list")
      Signed-off-by: default avatarStefan Metzmacher <metze@samba.org>
      Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
      b608e2c3
    • Stefan Metzmacher's avatar
      smb/client: avoid dereferencing rdata=NULL in smb2_new_read_req() · c724b2ab
      Stefan Metzmacher authored
      This happens when called from SMB2_read() while using rdma
      and reaching the rdma_readwrite_threshold.
      
      Cc: stable@vger.kernel.org
      Fixes: a6559cc1 ("cifs: split out smb3_use_rdma_offload() helper")
      Reviewed-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarStefan Metzmacher <metze@samba.org>
      Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
      c724b2ab
    • Linus Torvalds's avatar
      Linux 6.11-rc5 · 5be63fc1
      Linus Torvalds authored
      5be63fc1
    • Linus Torvalds's avatar
      Merge tag 'bcachefs-2024-08-24' of git://evilpiepirate.org/bcachefs · 72bea05c
      Linus Torvalds authored
      Pull bcachefs fixes from Kent Overstreet:
      
       - assorted syzbot fixes
      
       - some upgrade fixes for old (pre 1.0) filesystems
      
       - fix for moving data off a device that was switched to durability=0
         after data had been written to it.
      
       - nocow deadlock fix
      
       - fix for new rebalance_work accounting
      
      * tag 'bcachefs-2024-08-24' of git://evilpiepirate.org/bcachefs: (28 commits)
        bcachefs: Fix rebalance_work accounting
        bcachefs: Fix failure to flush moves before sleeping in copygc
        bcachefs: don't use rht_bucket() in btree_key_cache_scan()
        bcachefs: add missing inode_walker_exit()
        bcachefs: clear path->should_be_locked in bch2_btree_key_cache_drop()
        bcachefs: Fix double assignment in check_dirent_to_subvol()
        bcachefs: Fix refcounting in discard path
        bcachefs: Fix compat issue with old alloc_v4 keys
        bcachefs: Fix warning in bch2_fs_journal_stop()
        fs/super.c: improve get_tree() error message
        bcachefs: Fix missing validation in bch2_sb_journal_v2_validate()
        bcachefs: Fix replay_now_at() assert
        bcachefs: Fix locking in bch2_ioc_setlabel()
        bcachefs: fix failure to relock in btree_node_fill()
        bcachefs: fix failure to relock in bch2_btree_node_mem_alloc()
        bcachefs: unlock_long() before resort in journal replay
        bcachefs: fix missing bch2_err_str()
        bcachefs: fix time_stats_to_text()
        bcachefs: Fix bch2_bucket_gens_init()
        bcachefs: Fix bch2_trigger_alloc assert
        ...
      72bea05c
    • Linus Torvalds's avatar
      Merge tag '6.11-rc5-server-fixes' of git://git.samba.org/ksmbd · 780bdc1b
      Linus Torvalds authored
      Pull smb server fixes from Steve French:
      
       - query directory flex array fix
      
       - fix potential null ptr reference in open
      
       - fix error message in some open cases
      
       - two minor cleanups
      
      * tag '6.11-rc5-server-fixes' of git://git.samba.org/ksmbd:
        smb/server: update misguided comment of smb2_allocate_rsp_buf()
        smb/server: remove useless assignment of 'file_present' in smb2_open()
        smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()
        smb/server: fix return value of smb2_open()
        ksmbd: the buffer of smb2 query dir response has at least 1 byte
      780bdc1b
    • Linus Torvalds's avatar
      Merge tag 's390-6.11-4' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 48fb4b3d
      Linus Torvalds authored
      Pull s390 fixes from Vasily Gorbik:
      
       - Fix KASLR base offset to account for symbol offsets in the vmlinux
         ELF file, preventing tool breakages like the drgn debugger
      
       - Fix potential memory corruption of physmem_info during kernel
         physical address randomization
      
       - Fix potential memory corruption due to overlap between the relocated
         lowcore and identity mapping by correctly reserving lowcore memory
      
       - Fix performance regression and avoid randomizing identity mapping
         base by default
      
       - Fix unnecessary delay of AP bus binding complete uevent to prevent
         startup lag in KVM guests using AP
      
      * tag 's390-6.11-4' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/boot: Fix KASLR base offset off by __START_KERNEL bytes
        s390/boot: Avoid possible physmem_info segment corruption
        s390/ap: Refine AP bus bindings complete processing
        s390/mm: Pin identity mapping base to zero
        s390/mm: Prevent lowcore vs identity mapping overlap
      48fb4b3d
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 891e811a
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "The important core fix is another tweak to our discard discovery
        issues. The off by 512 in logical block count seems bad, but in fact
        the inline was only ever used in debug prints, which is why no-one
        noticed"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: sd: Do not attempt to configure discard unless LBPME is set
        scsi: MAINTAINERS: Add header files to SCSI SUBSYSTEM
        scsi: ufs: qcom: Add UFSHCD_QUIRK_BROKEN_LSDBS_CAP for SM8550 SoC
        scsi: ufs: core: Add a quirk for handling broken LSDBS field in controller capabilities register
        scsi: core: Fix the return value of scsi_logical_block_count()
        scsi: MAINTAINERS: Update HiSilicon SAS controller driver maintainer
      891e811a
  5. 24 Aug, 2024 18 commits
    • Huang-Huang Bao's avatar
      pinctrl: rockchip: correct RK3328 iomux width flag for GPIO2-B pins · 128f71fe
      Huang-Huang Bao authored
      The base iomux offsets for each GPIO pin line are accumulatively
      calculated based off iomux width flag in rockchip_pinctrl_get_soc_data.
      If the iomux width flag is one of IOMUX_WIDTH_4BIT, IOMUX_WIDTH_3BIT or
      IOMUX_WIDTH_2BIT, the base offset for next pin line would increase by 8
      bytes, otherwise it would increase by 4 bytes.
      
      Despite most of GPIO2-B iomux have 2-bit data width, which can be fit
      into 4 bytes space with write mask, it actually take 8 bytes width for
      whole GPIO2-B line.
      
      Commit e8448a6c ("pinctrl: rockchip: fix pinmux bits for RK3328
      GPIO2-B pins") wrongly set iomux width flag to 0, causing all base
      iomux offset for line after GPIO2-B to be calculated wrong. Fix the
      iomux width flag to IOMUX_WIDTH_2BIT so the offset after GPIO2-B is
      correctly increased by 8, matching the actual width of GPIO2-B iomux.
      
      Fixes: e8448a6c ("pinctrl: rockchip: fix pinmux bits for RK3328 GPIO2-B pins")
      Cc: stable@vger.kernel.org
      Reported-by: default avatarRichard Kojedzinszky <richard@kojedz.in>
      Closes: https://lore.kernel.org/linux-rockchip/4f29b743202397d60edfb3c725537415@kojedz.in/Tested-by: default avatarRichard Kojedzinszky <richard@kojedz.in>
      Signed-off-by: default avatarHuang-Huang Bao <i@eh5.me>
      Reviewed-by: default avatarHeiko Stuebner <heiko@sntech.de>
      Tested-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Tested-by: default avatarTrevor Woerner <twoerner@gmail.com>
      Link: https://lore.kernel.org/20240709105428.1176375-1-i@eh5.meSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      128f71fe
    • Kent Overstreet's avatar
      bcachefs: Fix rebalance_work accounting · 49aa7830
      Kent Overstreet authored
      rebalance_work was keying off of the presence of rebelance_opts in the
      extent - but that was incorrect, we keep those around after rebalance
      for indirect extents since the inode's options are not directly
      available
      
      Fixes: 20ac515a ("bcachefs: bch_acct_rebalance_work")
      Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
      49aa7830
    • Kent Overstreet's avatar
      bcachefs: Fix failure to flush moves before sleeping in copygc · d3204616
      Kent Overstreet authored
      This fixes an apparent deadlock - rebalance would get stuck trying to
      take nocow locks because they weren't being released by copygc.
      Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
      d3204616
    • David Howells's avatar
      netfs: Fix interaction of streaming writes with zero-point tracker · e00e99ba
      David Howells authored
      When a folio that is marked for streaming write (dirty, but not uptodate,
      with partial content specified in the private data) is written back, the
      folio is effectively switched to the blank state upon completion of the
      write.  This means that if we want to read it in future, we need to reread
      the whole folio.
      
      However, if the folio is above the zero_point position, when it is read
      back, it will just be cleared and the read skipped, leading to apparent
      local corruption.
      
      Fix this by increasing the zero_point to the end of the dirty data in the
      folio when clearing the folio state after writeback.  This is analogous to
      the folio having ->release_folio() called upon it.
      
      This was causing the config.log generated by configuring a cpython tree on
      a cifs share to get corrupted because the scripts involved were appending
      text to the file in small pieces.
      
      Fixes: 288ace2f ("netfs: New writeback implementation")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Link: https://lore.kernel.org/r/563286.1724500613@warthog.procyon.org.uk
      cc: Steve French <sfrench@samba.org>
      cc: Paulo Alcantara <pc@manguebit.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-cifs@vger.kernel.org
      cc: netfs@lists.linux.dev
      cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
      e00e99ba
    • David Howells's avatar
      netfs: Fix missing iterator reset on retry of short read · 950b03d0
      David Howells authored
      Fix netfs_rreq_perform_resubmissions() to reset before retrying a short
      read, otherwise the wrong part of the output buffer will be used.
      
      Fixes: 92b6cc5d ("netfs: Add iov_iters to (sub)requests to describe various buffers")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Link: https://lore.kernel.org/r/20240823200819.532106-6-dhowells@redhat.com
      cc: Steve French <sfrench@samba.org>
      cc: Paulo Alcantara <pc@manguebit.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-cifs@vger.kernel.org
      cc: netfs@lists.linux.dev
      cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
      950b03d0
    • David Howells's avatar
      netfs: Fix trimming of streaming-write folios in netfs_inval_folio() · cce6bfa6
      David Howells authored
      When netfslib writes to a folio that it doesn't have data for, but that
      data exists on the server, it will make a 'streaming write' whereby it
      stores data in a folio that is marked dirty, but not uptodate.  When it
      does this, it attaches a record to folio->private to track the dirty
      region.
      
      When truncate() or fallocate() wants to invalidate part of such a folio, it
      will call into ->invalidate_folio(), specifying the part of the folio that
      is to be invalidated.  netfs_invalidate_folio(), on behalf of the
      filesystem, must then determine how to trim the streaming write record.  In
      a couple of cases, however, it does this incorrectly (the reduce-length and
      move-start cases are switched over and don't, in any case, calculate the
      value correctly).
      
      Fix this by making the logic tree more obvious and fixing the cases.
      
      Fixes: 9ebff83e ("netfs: Prep to use folio->private for write grouping and streaming write")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Link: https://lore.kernel.org/r/20240823200819.532106-5-dhowells@redhat.com
      cc: Matthew Wilcox (Oracle) <willy@infradead.org>
      cc: Pankaj Raghav <p.raghav@samsung.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      cc: netfs@lists.linux.dev
      cc: linux-mm@kvack.org
      cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
      cce6bfa6
    • David Howells's avatar
      netfs: Fix netfs_release_folio() to say no if folio dirty · 7dfc8f0c
      David Howells authored
      Fix netfs_release_folio() to say no (ie. return false) if the folio is
      dirty (analogous with iomap's behaviour).  Without this, it will say yes to
      the release of a dirty page by split_huge_page_to_list_to_order(), which
      will result in the loss of untruncated data in the folio.
      
      Without this, the generic/075 and generic/112 xfstests (both fsx-based
      tests) fail with minimum folio size patches applied[1].
      
      Fixes: c1ec4d7c ("netfs: Provide invalidate_folio and release_folio calls")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Link: https://lore.kernel.org/r/20240815090849.972355-1-kernel@pankajraghav.com/ [1]
      Link: https://lore.kernel.org/r/20240823200819.532106-4-dhowells@redhat.com
      cc: Matthew Wilcox (Oracle) <willy@infradead.org>
      cc: Pankaj Raghav <p.raghav@samsung.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      cc: netfs@lists.linux.dev
      cc: linux-mm@kvack.org
      cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
      7dfc8f0c
    • David Howells's avatar
      afs: Fix post-setattr file edit to do truncation correctly · a74ee0e8
      David Howells authored
      At the end of an kAFS RPC operation, there is an "edit" phase (originally
      intended for post-directory modification ops to edit the local image) that
      the setattr VFS op uses to fix up the pagecache if the RPC that requested
      truncation of a file was successful.
      
      afs_setattr_edit_file() calls truncate_setsize() which sets i_size, expands
      the pagecache if needed and truncates the pagecache.  The first two of
      those, however, are redundant as they've already been done by
      afs_setattr_success() under the io_lock and the first is also done under
      the callback lock (cb_lock).
      
      Fix afs_setattr_edit_file() to call truncate_pagecache() instead (which is
      called by truncate_setsize(), thereby skipping the redundant parts.
      
      Fixes: 100ccd18 ("netfs: Optimise away reads above the point at which there can be no data")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Link: https://lore.kernel.org/r/20240823200819.532106-3-dhowells@redhat.com
      cc: Matthew Wilcox (Oracle) <willy@infradead.org>
      cc: Pankaj Raghav <p.raghav@samsung.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      cc: netfs@lists.linux.dev
      cc: linux-mm@kvack.org
      cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
      a74ee0e8
    • David Howells's avatar
      mm: Fix missing folio invalidation calls during truncation · 0aa2e1b2
      David Howells authored
      When AS_RELEASE_ALWAYS is set on a mapping, the ->release_folio() and
      ->invalidate_folio() calls should be invoked even if PG_private and
      PG_private_2 aren't set.  This is used by netfslib to keep track of the
      point above which reads can be skipped in favour of just zeroing pagecache
      locally.
      
      There are a couple of places in truncation in which invalidation is only
      called when folio_has_private() is true.  Fix these to check
      folio_needs_release() instead.
      
      Without this, the generic/075 and generic/112 xfstests (both fsx-based
      tests) fail with minimum folio size patches applied[1].
      
      Fixes: b4fa966f ("mm, netfs, fscache: stop read optimisation when folio removed from pagecache")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Link: https://lore.kernel.org/r/20240815090849.972355-1-kernel@pankajraghav.com/ [1]
      Link: https://lore.kernel.org/r/20240823200819.532106-2-dhowells@redhat.comReviewed-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
      cc: Matthew Wilcox (Oracle) <willy@infradead.org>
      cc: Pankaj Raghav <p.raghav@samsung.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      cc: netfs@lists.linux.dev
      cc: linux-mm@kvack.org
      cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
      0aa2e1b2
    • Christian Brauner's avatar
      Merge patch series "ovl: simplify ovl_parse_param_lowerdir()" · d10771d5
      Christian Brauner authored
      Simplify and fix overlayfs layer parsing so the maximum of 500 layers
      can be used.
      
      * patches from https://lore.kernel.org/r/20240705011510.794025-1-chengzhihao1@huawei.com:
        ovl: ovl_parse_param_lowerdir: Add missed '\n' for pr_err
        ovl: fix wrong lowerdir number check for parameter Opt_lowerdir
        ovl: pass string to ovl_parse_layer()
      
      Link: https://lore.kernel.org/r/20240705011510.794025-1-chengzhihao1@huawei.comSigned-off-by: default avatarChristian Brauner <brauner@kernel.org>
      d10771d5
    • Linus Torvalds's avatar
      Merge tag 'cgroup-for-6.11-rc4-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · d2bafcf2
      Linus Torvalds authored
      Pull cgroup fixes from Tejun Heo:
       "Three patches addressing cpuset corner cases"
      
      * tag 'cgroup-for-6.11-rc4-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup/cpuset: Eliminate unncessary sched domains rebuilds in hotplug
        cgroup/cpuset: Clear effective_xcpus on cpus_allowed clearing only if cpus.exclusive not set
        cgroup/cpuset: fix panic caused by partcmd_update
      d2bafcf2
    • Linus Torvalds's avatar
      Merge tag 'wq-for-6.11-rc4-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · cb2c84b3
      Linus Torvalds authored
      Pull workqueue fixes from Tejun Heo:
       "Nothing too interesting. One patch to remove spurious warning and
        others to address static checker warnings"
      
      * tag 'wq-for-6.11-rc4-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Correct declaration of cpu_pwq in struct workqueue_struct
        workqueue: Fix spruious data race in __flush_work()
        workqueue: Remove incorrect "WARN_ON_ONCE(!list_empty(&worker->entry));" from dying worker
        workqueue: Fix UBSAN 'subtraction overflow' error in shift_and_mask()
        workqueue: doc: Fix function name, remove markers
      cb2c84b3
    • Linus Torvalds's avatar
      Merge tag 'mips-fixes_6.11_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · 5bd6cf00
      Linus Torvalds authored
      Pull MIPS fixes from Thomas Bogendoerfer:
      
       - Set correct timer mode on Loongson64
      
       - Only request r4k clockevent interrupt on one CPU
      
      * tag 'mips-fixes_6.11_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        MIPS: cevt-r4k: Don't call get_c0_compare_int if timer irq is installed
        MIPS: Loongson64: Set timer mode in cpu-probe
      5bd6cf00
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · a8a8dcbd
      Linus Torvalds authored
      Pull arm64 kvm fixes from Catalin Marinas:
      
       - Don't drop references on LPIs that weren't visited by the vgic-debug
         iterator
      
       - Cure lock ordering issue when unregistering vgic redistributors
      
       - Fix for misaligned stage-2 mappings when VMs are backed by hugetlb
         pages
      
       - Treat SGI registers as UNDEFINED if a VM hasn't been configured for
         GICv3
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        KVM: arm64: Make ICC_*SGI*_EL1 undef in the absence of a vGICv3
        KVM: arm64: Ensure canonical IPA is hugepage-aligned when handling fault
        KVM: arm64: vgic: Don't hold config_lock while unregistering redistributors
        KVM: arm64: vgic-debug: Don't put unmarked LPIs
      a8a8dcbd
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-6.11-2' of git://git.linux-nfs.org/projects/anna/linux-nfs · 60f0560f
      Linus Torvalds authored
      Pull NFS client fixes from Anna Schumaker:
      
       - Fix rpcrdma refcounting in xa_alloc
      
       - Fix rpcrdma usage of XA_FLAGS_ALLOC
      
       - Fix requesting FATTR4_WORD2_OPEN_ARGUMENTS
      
       - Fix attribute bitmap decoder to handle a 3rd word
      
       - Add reschedule points when returning delegations to avoid soft lockups
      
       - Fix clearing layout segments in layoutreturn
      
       - Avoid unnecessary rescanning of the per-server delegation list
      
      * tag 'nfs-for-6.11-2' of git://git.linux-nfs.org/projects/anna/linux-nfs:
        NFS: Avoid unnecessary rescanning of the per-server delegation list
        NFSv4: Fix clearing of layout segments in layoutreturn
        NFSv4: Add missing rescheduling points in nfs_client_return_marked_delegations
        nfs: fix bitmap decoder to handle a 3rd word
        nfs: fix the fetch of FATTR4_OPEN_ARGUMENTS
        rpcrdma: Trace connection registration and unregistration
        rpcrdma: Use XA_FLAGS_ALLOC instead of XA_FLAGS_ALLOC1
        rpcrdma: Device kref is over-incremented on error from xa_alloc
      60f0560f
    • Linus Torvalds's avatar
      Merge tag 'v6.11-rc4-client-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 66ace9a8
      Linus Torvalds authored
      Pull smb client fixes from Steve French:
      
       - fix refcount leak (can cause rmmod fail)
      
       - fix byte range locking problem with cached reads
      
       - fix for mount failure if reparse point unrecognized
      
       - minor typo
      
      * tag 'v6.11-rc4-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        smb/client: fix typo: GlobalMid_Sem -> GlobalMid_Lock
        smb: client: ignore unhandled reparse tags
        smb3: fix problem unloading module due to leaked refcount on shutdown
        smb3: fix broken cached reads when posix locks
      66ace9a8
    • Linus Torvalds's avatar
      Merge tag 'input-for-v6.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 7eb61cc6
      Linus Torvalds authored
      Pull input fixes from Dmitry Torokhov:
      
       - a tweak to uinput interface to reject requests with abnormally large
         number of slots. 100 slots/contacts should be enough for real devices
      
       - support for FocalTech FT8201 added to the edt-ft5x06 driver
      
       - tweaks to i8042 to handle more devices that have issue with its
         emulation
      
       - Synaptics touchpad switched to native SMbus/RMI mode on HP Elitebook
         840 G2
      
       - other minor fixes
      
      * tag 'input-for-v6.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: himax_hx83112b - fix incorrect size when reading product ID
        Input: i8042 - use new forcenorestore quirk to replace old buggy quirk combination
        Input: i8042 - add forcenorestore quirk to leave controller untouched even on s3
        Input: i8042 - add Fujitsu Lifebook E756 to i8042 quirk table
        Input: uinput - reject requests with unreasonable number of slots
        Input: edt-ft5x06 - add support for FocalTech FT8201
        dt-bindings: input: touchscreen: edt-ft5x06: Document FT8201 support
        Input: adc-joystick - fix optional value handling
        Input: synaptics - enable SMBus for HP Elitebook 840 G2
        Input: ads7846 - ratelimit the spi_sync error message
      7eb61cc6
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2024-08-24' of https://gitlab.freedesktop.org/drm/kernel · 79a899e3
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Weekly fixes. xe and msm are the major groups, with
        amdgpu/i915/nouveau having smaller bits. xe has a bunch of hw
        workaround fixes that were found to be missing, so that is why there
        are a bunch of scattered fixes, and one larger one. But overall size
        doesn't look too out of the ordinary.
      
        msm:
         - virtual plane fixes:
            - drop yuv on hw where not supported
            - csc vs yuv format fix
            - rotation fix
         - fix fb cleanup on close
         - reset phy before link training
         - fix visual corruption at 4K
         - fix NULL ptr crash on hotplug
         - simplify debug macros
         - sc7180 fix
         - adreno firmware name error path fix
      
        amdgpu:
         - GFX10 firmware loading fix
         - SDMA 5.2 fix
         - Debugfs parameter validation fix
         - eGPU hotplug fix
      
        i915:
         - fix HDCP timeouts
      
        nouveau:
         - fix SG_DEBUG crash
      
        xe:
         - Fix OA format masks which were breaking build with gcc-5
         - Fix opregion leak (Lucas)
         - Fix OA sysfs entry (Ashutosh)
         - Fix VM dma-resv lock (Brost)
         - Fix tile fini sequence (Brost)
         - Prevent UAF around preempt fence (Auld)
         - Fix DGFX display suspend/resume (Maarten)
         - Many Xe/Xe2 critical workarounds (Auld, Ngai-Mint, Bommu, Tejas, Daniele)
         - Fix devm/drmm issues (Daniele)
         - Fix missing workqueue destroy in xe_gt_pagefault (Stuart)
         - Drop HW fence pointer to HW fence ctx (Brost)
         - Free job before xe_exec_queue_put (Brost)"
      
      * tag 'drm-fixes-2024-08-24' of https://gitlab.freedesktop.org/drm/kernel: (35 commits)
        drm/xe: Free job before xe_exec_queue_put
        drm/xe: Drop HW fence pointer to HW fence ctx
        drm/xe: Fix missing workqueue destroy in xe_gt_pagefault
        drm/amdgpu: fix eGPU hotplug regression
        drm/amdgpu: Validate TA binary size
        drm/amdgpu/sdma5.2: limit wptr workaround to sdma 5.2.1
        drm/amdgpu: fixing rlc firmware loading failure issue
        drm/xe/uc: Use devm to register cleanup that includes exec_queues
        drm/xe: use devm instead of drmm for managed bo
        drm/xe/xe2hpg: Add Wa_14021821874
        drm/xe: fix WA 14018094691
        drm/xe/xe2: Add Wa_15015404425
        drm/xe/xe2: Make subsequent L2 flush sequential
        drm/xe/xe2lpg: Extend workaround 14021402888
        drm/xe/xe2lpm: Extend Wa_16021639441
        drm/xe/bmg: implement Wa_16023588340
        drm/xe/oa/uapi: Make bit masks unsigned
        drm/xe/display: Make display suspend/resume work on discrete
        drm/xe: prevent UAF around preempt fence
        drm/xe: Fix tile fini sequence
        ...
      79a899e3
  6. 23 Aug, 2024 2 commits