1. 27 Apr, 2021 12 commits
    • Linus Torvalds's avatar
      Merge tag 'netfs-lib-20210426' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 820c4bae
      Linus Torvalds authored
      Pull network filesystem helper library updates from David Howells:
       "Here's a set of patches for 5.13 to begin the process of overhauling
        the local caching API for network filesystems. This set consists of
        two parts:
      
        (1) Add a helper library to handle the new VM readahead interface.
      
            This is intended to be used unconditionally by the filesystem
            (whether or not caching is enabled) and provides a common
            framework for doing caching, transparent huge pages and, in the
            future, possibly fscrypt and read bandwidth maximisation. It also
            allows the netfs and the cache to align, expand and slice up a
            read request from the VM in various ways; the netfs need only
            provide a function to read a stretch of data to the pagecache and
            the helper takes care of the rest.
      
        (2) Add an alternative fscache/cachfiles I/O API that uses the kiocb
            facility to do async DIO to transfer data to/from the netfs's
            pages, rather than using readpage with wait queue snooping on one
            side and vfs_write() on the other. It also uses less memory, since
            it doesn't do buffered I/O on the backing file.
      
            Note that this uses SEEK_HOLE/SEEK_DATA to locate the data
            available to be read from the cache. Whilst this is an improvement
            from the bmap interface, it still has a problem with regard to a
            modern extent-based filesystem inserting or removing bridging
            blocks of zeros. Fixing that requires a much greater overhaul.
      
        This is a step towards overhauling the fscache API. The change is
        opt-in on the part of the network filesystem. A netfs should not try
        to mix the old and the new API because of conflicting ways of handling
        pages and the PG_fscache page flag and because it would be mixing DIO
        with buffered I/O. Further, the helper library can't be used with the
        old API.
      
        This does not change any of the fscache cookie handling APIs or the
        way invalidation is done at this time.
      
        In the near term, I intend to deprecate and remove the old I/O API
        (fscache_allocate_page{,s}(), fscache_read_or_alloc_page{,s}(),
        fscache_write_page() and fscache_uncache_page()) and eventually
        replace most of fscache/cachefiles with something simpler and easier
        to follow.
      
        This patchset contains the following parts:
      
         - Some helper patches, including provision of an ITER_XARRAY iov
           iterator and a function to do readahead expansion.
      
         - Patches to add the netfs helper library.
      
         - A patch to add the fscache/cachefiles kiocb API.
      
         - A pair of patches to fix some review issues in the ITER_XARRAY and
           read helpers as spotted by Al and Willy.
      
        Jeff Layton has patches to add support in Ceph for this that he
        intends for this merge window. I have a set of patches to support AFS
        that I will post a separate pull request for.
      
        With this, AFS without a cache passes all expected xfstests; with a
        cache, there's an extra failure, but that's also there before these
        patches. Fixing that probably requires a greater overhaul. Ceph also
        passes the expected tests.
      
        I also have patches in a separate branch to tidy up the handling of
        PG_fscache/PG_private_2 and their contribution to page refcounting in
        the core kernel here, but I haven't included them in this set and will
        route them separately"
      
      Link: https://lore.kernel.org/lkml/3779937.1619478404@warthog.procyon.org.uk/
      
      * tag 'netfs-lib-20210426' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        netfs: Miscellaneous fixes
        iov_iter: Four fixes for ITER_XARRAY
        fscache, cachefiles: Add alternate API to use kiocb for read/write to cache
        netfs: Add a tracepoint to log failures that would be otherwise unseen
        netfs: Define an interface to talk to a cache
        netfs: Add write_begin helper
        netfs: Gather stats
        netfs: Add tracepoints
        netfs: Provide readahead and readpage netfs helpers
        netfs, mm: Add set/end/wait_on_page_fscache() aliases
        netfs, mm: Move PG_fscache helper funcs to linux/netfs.h
        netfs: Documentation for helper library
        netfs: Make a netfs helper module
        mm: Implement readahead_control pageset expansion
        mm/readahead: Handle ractl nr_pages being modified
        fs: Document file_ra_state
        mm/filemap: Pass the file_ra_state in the ractl
        mm: Add set/end/wait functions for PG_private_2
        iov_iter: Add ITER_XARRAY
      820c4bae
    • Linus Torvalds's avatar
      Merge tag 'fs.idmapped.helpers.v5.13' of... · 34a456eb
      Linus Torvalds authored
      Merge tag 'fs.idmapped.helpers.v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux
      
      Pull fs mapping helper updates from Christian Brauner:
       "This adds kernel-doc to all new idmapping helpers and improves their
        naming which was triggered by a discussion with some fs developers.
        Some of the names are based on suggestions by Vivek and Al.
      
        Also remove the open-coded permission checking in a few places with
        simple helpers. Overall this should lead to more clarity and make it
        easier to maintain"
      
      * tag 'fs.idmapped.helpers.v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
        fs: introduce two inode i_{u,g}id initialization helpers
        fs: introduce fsuidgid_has_mapping() helper
        fs: document and rename fsid helpers
        fs: document mapping helpers
      34a456eb
    • Linus Torvalds's avatar
      Merge tag 'fs.idmapped.docs.v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux · cc15422c
      Linus Torvalds authored
      Pull fs helper kernel-doc updates from Christian Brauner:
       "In the last cycles we forgot to update the kernel-docs in some places
        that were changed during the idmapped mount work. Lukas and Randy took
        the chance to not just fixup those places but also fixup and expand
        kernel-docs for some additional helpers.
      
        No functional changes"
      
      * tag 'fs.idmapped.docs.v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
        fs: update kernel-doc for vfs_rename()
        fs: turn some comments into kernel-doc
        xattr: fix kernel-doc for mnt_userns and vfs xattr helpers
        namei: fix kernel-doc for struct renamedata and more
        libfs: fix kernel-doc for mnt_userns
      cc15422c
    • Linus Torvalds's avatar
      Merge tag 'iomap-5.13-merge-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · b34b95eb
      Linus Torvalds authored
      Pull iomap update from Darrick Wong:
       "A single patch to the iomap code, which augments what gets logged when
        someone tries to swapon an unacceptable swap file. (Yes, this is a
        continuation of the swapfile drama from last season...)"
      
      * tag 'iomap-5.13-merge-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        iomap: improve the warnings from iomap_swapfile_activate
      b34b95eb
    • Linus Torvalds's avatar
      Merge branch 'miklos.fileattr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · a4f7fae1
      Linus Torvalds authored
      Pull fileattr conversion updates from Miklos Szeredi via Al Viro:
       "This splits the handling of FS_IOC_[GS]ETFLAGS from ->ioctl() into a
        separate method.
      
        The interface is reasonably uniform across the filesystems that
        support it and gives nice boilerplate removal"
      
      * 'miklos.fileattr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (23 commits)
        ovl: remove unneeded ioctls
        fuse: convert to fileattr
        fuse: add internal open/release helpers
        fuse: unsigned open flags
        fuse: move ioctl to separate source file
        vfs: remove unused ioctl helpers
        ubifs: convert to fileattr
        reiserfs: convert to fileattr
        ocfs2: convert to fileattr
        nilfs2: convert to fileattr
        jfs: convert to fileattr
        hfsplus: convert to fileattr
        efivars: convert to fileattr
        xfs: convert to fileattr
        orangefs: convert to fileattr
        gfs2: convert to fileattr
        f2fs: convert to fileattr
        ext4: convert to fileattr
        ext2: convert to fileattr
        btrfs: convert to fileattr
        ...
      a4f7fae1
    • Linus Torvalds's avatar
      Merge branch 'work.coredump' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 5e672088
      Linus Torvalds authored
      Pull coredump updates from Al Viro:
       "Just a couple of patches this cycle: use of seek + write instead of
        expanding truncate and minor header cleanup"
      
      * 'work.coredump' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        coredump.h: move CONFIG_COREDUMP-only stuff inside the ifdef
        coredump: don't bother with do_truncate()
      5e672088
    • Linus Torvalds's avatar
      Merge branch 'work.inode-type-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · d1466bc5
      Linus Torvalds authored
      Pull vfs inode type handling updates from Al Viro:
       "We should never change the type bits of ->i_mode or the method tables
        (->i_op and ->i_fop) of a live inode.
      
        Unfortunately, not all filesystems took care to prevent that"
      
      * 'work.inode-type-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        spufs: fix bogosity in S_ISGID handling
        9p: missing chunk of "fs/9p: Don't update file type when updating file attributes"
        openpromfs: don't do unlock_new_inode() until the new inode is set up
        hostfs_mknod(): don't bother with init_special_inode()
        cifs: have cifs_fattr_to_inode() refuse to change type on live inode
        cifs: have ->mkdir() handle race with another client sanely
        do_cifs_create(): don't set ->i_mode of something we had not created
        gfs2: be careful with inode refresh
        ocfs2_inode_lock_update(): make sure we don't change the type bits of i_mode
        orangefs_inode_is_stale(): i_mode type bits do *not* form a bitmap...
        vboxsf: don't allow to change the inode type
        afs: Fix updating of i_mode due to 3rd party change
        ceph: don't allow type or device number to change on non-I_NEW inodes
        ceph: fix up error handling with snapdirs
        new helper: inode_wrong_type()
      d1466bc5
    • Linus Torvalds's avatar
      Merge tag 'cfi-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 57fa2369
      Linus Torvalds authored
      Pull CFI on arm64 support from Kees Cook:
       "This builds on last cycle's LTO work, and allows the arm64 kernels to
        be built with Clang's Control Flow Integrity feature. This feature has
        happily lived in Android kernels for almost 3 years[1], so I'm excited
        to have it ready for upstream.
      
        The wide diffstat is mainly due to the treewide fixing of mismatched
        list_sort prototypes. Other things in core kernel are to address
        various CFI corner cases. The largest code portion is the CFI runtime
        implementation itself (which will be shared by all architectures
        implementing support for CFI). The arm64 pieces are Acked by arm64
        maintainers rather than coming through the arm64 tree since carrying
        this tree over there was going to be awkward.
      
        CFI support for x86 is still under development, but is pretty close.
        There are a handful of corner cases on x86 that need some improvements
        to Clang and objtool, but otherwise works well.
      
        Summary:
      
         - Clean up list_sort prototypes (Sami Tolvanen)
      
         - Introduce CONFIG_CFI_CLANG for arm64 (Sami Tolvanen)"
      
      * tag 'cfi-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        arm64: allow CONFIG_CFI_CLANG to be selected
        KVM: arm64: Disable CFI for nVHE
        arm64: ftrace: use function_nocfi for ftrace_call
        arm64: add __nocfi to __apply_alternatives
        arm64: add __nocfi to functions that jump to a physical address
        arm64: use function_nocfi with __pa_symbol
        arm64: implement function_nocfi
        psci: use function_nocfi for cpu_resume
        lkdtm: use function_nocfi
        treewide: Change list_sort to use const pointers
        bpf: disable CFI in dispatcher functions
        kallsyms: strip ThinLTO hashes from static functions
        kthread: use WARN_ON_FUNCTION_MISMATCH
        workqueue: use WARN_ON_FUNCTION_MISMATCH
        module: ensure __cfi_check alignment
        mm: add generic function_nocfi macro
        cfi: add __cficanonical
        add support for Clang CFI
      57fa2369
    • Linus Torvalds's avatar
      Merge tag 'overflow-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 2fbc66c7
      Linus Torvalds authored
      Pull overflow update from Kees Cook:
       "I was expecting more in this tree for this cycle, but the other work
        has not yet landed for -next. As a result, only this single typo fix
        exists. Yay tiny pulls. :)
      
         - Fix typo in check_shl_overflow() kern-dec (Keith Busch)"
      
      * tag 'overflow-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        overflow: Correct check_shl_overflow() comment
      2fbc66c7
    • Linus Torvalds's avatar
      Merge tag 'pstore-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 288321a9
      Linus Torvalds authored
      Pull pstore update from Kees Cook:
      
       - Add mem_type property to expand support for >2 memory types (Mukesh Ojha)
      
      * tag 'pstore-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        pstore: Add mem_type property DT parsing support
      288321a9
    • Linus Torvalds's avatar
      Merge tag 'seccomp-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 7e4910b9
      Linus Torvalds authored
      Pull seccomp updates from Kees Cook:
      
       - Fix "cacheable" typo in comments (Cui GaoSheng)
      
       - Fix CONFIG for /proc/$pid/status Seccomp_filters (Kenta.Tada@sony.com)
      
      * tag 'seccomp-v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        seccomp: Fix "cacheable" typo in comments
        seccomp: Fix CONFIG tests for Seccomp_filters
      7e4910b9
    • Johannes Berg's avatar
      cfg80211: fix locking in netlink owner interface destruction · ea6b2098
      Johannes Berg authored
      Harald Arnesen reported [1] a deadlock at reboot time, and after
      he captured a stack trace a picture developed of what's going on:
      
      The distribution he's using is using iwd (not wpa_supplicant) to
      manage wireless. iwd will usually use the "socket owner" option
      when it creates new interfaces, so that they're automatically
      destroyed when it quits (unexpectedly or otherwise). This is also
      done by wpa_supplicant, but it doesn't do it for the normal one,
      only for additional ones, which is different with iwd.
      
      Anyway, during shutdown, iwd quits while the netdev is still UP,
      i.e. IFF_UP is set. This causes the stack trace that Linus so
      nicely transcribed from the pictures:
      
      cfg80211_destroy_iface_wk() takes wiphy_lock
       -> cfg80211_destroy_ifaces()
        ->ieee80211_del_iface
          ->ieeee80211_if_remove
            ->cfg80211_unregister_wdev
              ->unregister_netdevice_queue
                ->dev_close_many
                  ->__dev_close_many
                    ->raw_notifier_call_chain
                      ->cfg80211_netdev_notifier_call
      and that last call tries to take wiphy_lock again.
      
      In commit a05829a7 ("cfg80211: avoid holding the RTNL when
      calling the driver") I had taken into account the possibility of
      recursing from cfg80211 into cfg80211_netdev_notifier_call() via
      the network stack, but only for NETDEV_UNREGISTER, not for what
      happens here, NETDEV_GOING_DOWN and NETDEV_DOWN notifications.
      
      Additionally, while this worked still back in commit 78f22b6a
      ("cfg80211: allow userspace to take ownership of interfaces"), it
      missed another corner case: unregistering a netdev will cause
      dev_close() to be called, and thus stop wireless operations (e.g.
      disconnecting), but there are some types of virtual interfaces in
      wifi that don't have a netdev - for that we need an additional
      call to cfg80211_leave().
      
      So, to fix this mess, change cfg80211_destroy_ifaces() to not
      require the wiphy_lock(), but instead make it acquire it, but
      only after it has actually closed all the netdevs on the list,
      and then call cfg80211_leave() as well before removing them
      from the driver, to fix the second issue. The locking change in
      this requires modifying the nl80211 call to not get the wiphy
      lock passed in, but acquire it by itself after flushing any
      potentially pending destruction requests.
      
      [1] https://lore.kernel.org/r/09464e67-f3de-ac09-28a3-e27b7914ee7d@skogtun.org
      
      Cc: stable@vger.kernel.org # 5.12
      Reported-by: default avatarHarald Arnesen <harald@skogtun.org>
      Fixes: 776a39b8 ("cfg80211: call cfg80211_destroy_ifaces() with wiphy lock held")
      Fixes: 78f22b6a ("cfg80211: allow userspace to take ownership of interfaces")
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Tested-by: default avatarHarald Arnesen <harald@skogtun.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ea6b2098
  2. 26 Apr, 2021 28 commits
    • Linus Torvalds's avatar
      Merge tag 'spi-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 4a0225c3
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "The only core work for SPI this time around is the completion of the
        conversion to the new style method for specifying transfer delays,
        meaning we can cope with what most controllers support more directly
        using conversions in the core rather than open coding in drivers.
      
        Otherwise it's a good stack of cleanups and fixes plus a few new
        drivers.
      
        Summary:
      
         - Completion of the conversion to new style transfer delay
           configuration
      
         - Introduction and use of module_parport_driver() helper, merged here
           as there's no parport tree
      
         - Support for Altera SoCs on DFL buses, NXP i.MX8DL, HiSilicon
           Kunpeng, MediaTek MT8195"
      
      * tag 'spi-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (113 commits)
        spi: Rename enable1 to activate in spi_set_cs()
        spi: Convert Freescale QSPI binding to json schema
        spi: stm32-qspi: fix debug format string
        spi: tools: make a symbolic link to the header file spi.h
        spi: fsi: add a missing of_node_put
        spi: Make error handling of gpiod_count() call cleaner
        spidev: Add Micron SPI NOR Authenta device compatible
        spi: brcm,spi-bcm-qspi: convert to the json-schema
        spi: altera: Add DFL bus driver for Altera API Controller
        spi: altera: separate core code from platform code
        spi: stm32-qspi: Fix compilation warning in ARM64
        spi: Handle SPI device setup callback failure.
        spi: sync up initial chipselect state
        spi: stm32-qspi: Add dirmap support
        spi: stm32-qspi: Trigger DMA only if more than 4 bytes to transfer
        spi: stm32-qspi: fix pm_runtime usage_count counter
        spi: spi-zynqmp-gqspi: return -ENOMEM if dma_map_single fails
        spi: spi-zynqmp-gqspi: fix use-after-free in zynqmp_qspi_exec_op
        spi: spi-zynqmp-gqspi: Resolved slab-out-of-bounds bug
        spi: spi-zynqmp-gqspi: fix hang issue when suspend/resume
        ...
      4a0225c3
    • Linus Torvalds's avatar
      Merge tag 'regulator-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · ca62e909
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "Not much going on with regulator this cycle, even in terms of cleanups
        and fixes things were fairly quiet.
      
         - New helper for setting ramp delay
      
         - Conversion of the Qualcomm RPMH bindings to YAML
      
         - Support for Tang Cheng TCS4525"
      
      * tag 'regulator-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (26 commits)
        regulator: Add binding for TCS4525
        regulator: fan53555: Add TCS4525 DCDC support
        dt-bindings: vendor-prefixes: Add Tang Cheng (TCS)
        regulator: core: Fix off_on_delay handling
        regulator: core: Respect off_on_delay at startup
        regulator: core.c: Improve a comment
        regulator: Avoid a double 'of_node_get' in 'regulator_of_get_init_node()'
        regulator: core.c: Fix indentation of comment
        regulator: s2mps11: Drop initialization via platform data
        regulator: s2mpa01: Drop initialization via platform data
        regulator: da9121: automotive variants identity fix
        regulator: Add regmap helper for ramp-delay setting
        regulator: helpers: Export helper voltage listing
        regulator: Add compatibles for PM7325/PMR735A
        regulator: Convert RPMh regulator bindings to YAML
        regulator: qcom-rpmh: Add PM7325/PMR735A regulator support
        regulator: qcom-rpmh: Add pmic5_ftsmps520 buck
        regulator: mt6360: remove redundant error print
        regulator: bd9576: Fix return from bd957x_probe()
        regulator: add missing call to of_node_put()
        ...
      ca62e909
    • Linus Torvalds's avatar
      Merge tag 'regmap-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · fed584c4
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "A couple of fixes in this release, plus a couple of new features for
        regmap-irq - we now support sub-irq blocks at arbatrary addresses and
        can remap configuration bitfields for interrupts split over multiple
        registers to the Linux configurations"
      
      * tag 'regmap-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap-irq: Fix dereference of a potentially null d->virt_buf
        regmap-irq: Add driver callback to configure virtual regs
        regmap-irq: Introduce virtual regs to handle more config regs
        regmap-irq: Extend sub-irq to support non-fixed reg strides
        regmap: set debugfs_name to NULL after it is freed
      fed584c4
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 070a7252
      Linus Torvalds authored
      Pull mtd updates from Miquel Raynal:
       "MTD core:
         - Handle possible -EPROBE_DEFER from parse_mtd_partitions()
         - Constify buf in mtd_write_user_prot_reg()
         - Constify name param in mtd_bdi_init
         - Fix fall-through warnings for Clang
         - Get rid of Big MTD Lock ouf of mtdchar
         - Drop mtd_mutex usage from mtdchar_open()
         - Don't lock when recursively deleting partitions
         - Use module_mtd_blktrans() to register driver when relevant
         - Parse MTD as NVMEM cells
         - New OTP (one-time-programmable) erase ioctl
         - Require write permissions for locking and badblock ioctls
         - physmap:
            - Fix error return code of physmap_flash_remove()
            - physmap-bt1-rom: Fix unintentional stack access
         - ofpart parser:
            - Support Linksys Northstar partitions
            - Make symbol 'bcm4908_partitions_quirks' static
            - Limit parsing of deprecated DT syntax
            - Support BCM4908 fixed partitions
         - Qcom parser:
            - Incompatible with spi-nor 4k sectors
            - Fix error condition
            - Extend Qcom SMEM parser to SPI flash
      
        CFI:
         - Disable broken buffered writes for CFI chips within ID 0x2201
         - Address a Coverity report for unused value
      
        SPI NOR core:
         - Add OTP support
         - Fix module unload while an op in progress
         - Add various cleanup patches
         - Add Michael and Pratyush as designated reviewers in MAINTAINERS
      
        SPI NOR controller drivers:
         - intel-spi:
            - Move platform data header to x86 subfolder
      
        NAND core:
         - Fix error handling in nand_prog_page_op() (x2)
         - Add a helper to retrieve the number of ECC bytes per step
         - Add a helper to retrieve the number of ECC steps
         - Let ECC engines advertize the exact number of steps
         - ECC Hamming:
            - Populate the public nsteps field
            - Use the public nsteps field
         - ECC BCH:
            - Populate the public nsteps field
            - Use the public nsteps field
      
        Raw NAND core:
         - Add support for secure regions in NAND memory
         - Try not to use the ECC private structures
         - Remove duplicate include in rawnand.h
         - BBT:
            - Skip bad blocks when searching for the BBT in NAND (APPLIED THEN REVERTED)
      
        Raw NAND controller drivers:
         - Qcom:
            - Convert bindings to YAML
            - Use dma_mapping_error() for error check
            - Add missing nand_cleanup() in error path
            - Return actual error code instead of -ENODEV
            - Update last code word register
            - Add helper to configure location register
            - Rename parameter name in macro
            - Add helper to check last code word
            - Convert nandc to chip in Read/Write helper
            - Update register macro name for 0x2c offset
         - GPMI:
            - Fix a double free in gpmi_nand_init
         - Rockchip:
            - Use flexible-array member instead of zero-length array
         - Atmel:
            - Update ecc_stats.corrected counter
         - MXC:
            - Remove unneeded of_match_ptr()
         - R852:
            - replace spin_lock_irqsave by spin_lock in hard IRQ
         - Brcmnand:
            - Move to polling in pio mode on oops write
            - Read/write oob during EDU transfer
            - Fix OOB R/W with Hamming ECC
         - FSMC:
            - Fix error code in fsmc_nand_probe()
         - OMAP:
            - Use ECC information from the generic structures
      
        SPI-NAND core:
         - Add missing MODULE_DEVICE_TABLE()
      
        SPI-NAND drivers:
         - gigadevice: Support GD5F1GQ5UExxG"
      
      * tag 'mtd/for-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (89 commits)
        Revert "mtd: rawnand: bbt: Skip bad blocks when searching for the BBT in NAND"
        mtd: core: Constify buf in mtd_write_user_prot_reg()
        Revert "mtd: spi-nor: macronix: Add support for mx25l51245g"
        mtd: spi-nor: core: Fix an issue of releasing resources during read/write
        mtd: cfi_cmdset_0002: remove redundant assignment to variable timeo
        mtd: cfi_cmdset_0002: Disable buffered writes for AMD chip 0x2201
        mtd: rawnand: qcom: Use dma_mapping_error() for error check
        mtd: rawnand: gpmi: Fix a double free in gpmi_nand_init
        mtd: rawnand: qcom: Add missing nand_cleanup() in error path
        mtd: rawnand: Add support for secure regions in NAND memory
        dt-bindings: mtd: Add a property to declare secure regions in NAND chips
        dt-bindings: mtd: Convert Qcom NANDc binding to YAML
        mtd: spi-nor: winbond: add OTP support to w25q32fw/jw
        mtd: spi-nor: implement OTP support for Winbond and similar flashes
        mtd: spi-nor: add OTP support
        mtd: spi-nor: swp: Improve code around spi_nor_check_lock_status_sr()
        mtd: spi-nor: Move Software Write Protection logic out of the core
        mtd: rawnand: bbt: Skip bad blocks when searching for the BBT in NAND
        include: linux: mtd: Remove duplicate include of nand.h
        mtd: parsers: ofpart: support Linksys Northstar partitions
        ...
      070a7252
    • Linus Torvalds's avatar
      Merge branch 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · e19eede5
      Linus Torvalds authored
      Pull dmi update from Jean Delvare.
      
      * 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        MAINTAINERS: The DMI/SMBIOS tree has moved
        firmware/dmi: Include product_sku info to modalias
      e19eede5
    • David Howells's avatar
      netfs: Miscellaneous fixes · 53b776c7
      David Howells authored
      Fix some miscellaneous things in the new netfs lib[1]:
      
       (1) The kerneldoc for netfs_readpage() shouldn't say netfs_page().
      
       (2) netfs_readpage() can get an integer overflow on 32-bit when it
           multiplies page_index(page) by PAGE_SIZE.  It should use
           page_file_offset() instead.
      
       (3) netfs_write_begin() should use page_offset() to avoid the same
           overflow.
      
      Note that netfs_readpage() needs to use page_file_offset() rather than
      page_offset() as it may see swap-over-NFS.
      Reported-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      Link: https://lore.kernel.org/r/161789062190.6155.12711584466338493050.stgit@warthog.procyon.org.uk/ [1]
      53b776c7
    • Linus Torvalds's avatar
      Merge tag 'devprop-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · f0728bfe
      Linus Torvalds authored
      Pull device properties framework update from Rafael Wysocki:
       "Add MAINTAINERS entry for software nodes core code (Heikki Krogerus)"
      
      * tag 'devprop-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        MAINTAINERS: Add entry for the software nodes
      f0728bfe
    • Linus Torvalds's avatar
      Merge tag 'pm-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 5469f160
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These add some new hardware support (for example, IceLake-D idle
        states in intel_idle), fix some issues (for example, the handling of
        negative "sleep length" values in cpuidle governors), add new
        functionality to the existing drivers (for example, scale-invariance
        support in the ACPI CPPC cpufreq driver) and clean up code all over.
      
        Specifics:
      
         - Add idle states table for IceLake-D to the intel_idle driver and
           update IceLake-X C6 data in it (Artem Bityutskiy).
      
         - Fix the C7 idle state on Tegra114 in the tegra cpuidle driver and
           drop the unused do_idle() firmware call from it (Dmitry Osipenko).
      
         - Fix cpuidle-qcom-spm Kconfig entry (He Ying).
      
         - Fix handling of possible negative tick_nohz_get_next_hrtimer()
           return values of in cpuidle governors (Rafael Wysocki).
      
         - Add support for frequency-invariance to the ACPI CPPC cpufreq
           driver and update the frequency-invariance engine (FIE) to use it
           as needed (Viresh Kumar).
      
         - Simplify the default delay_us setting in the ACPI CPPC cpufreq
           driver (Tom Saeger).
      
         - Clean up frequency-related computations in the intel_pstate cpufreq
           driver (Rafael Wysocki).
      
         - Fix TBG parent setting for load levels in the armada-37xx cpufreq
           driver and drop the CPU PM clock .set_parent method for armada-37xx
           (Marek Behún).
      
         - Fix multiple issues in the armada-37xx cpufreq driver (Pali Rohár).
      
         - Fix handling of dev_pm_opp_of_cpumask_add_table() return values in
           cpufreq-dt to take the -EPROBE_DEFER one into acconut as
           appropriate (Quanyang Wang).
      
         - Fix format string in ia64-acpi-cpufreq (Sergei Trofimovich).
      
         - Drop the unused for_each_policy() macro from cpufreq (Shaokun
           Zhang).
      
         - Simplify computations in the schedutil cpufreq governor to avoid
           unnecessary overhead (Yue Hu).
      
         - Fix typos in the s5pv210 cpufreq driver (Bhaskar Chowdhury).
      
         - Fix cpufreq documentation links in Kconfig (Alexander Monakov).
      
         - Fix PCI device power state handling in pci_enable_device_flags() to
           avoid issuse in some cases when the device depends on an ACPI power
           resource (Rafael Wysocki).
      
         - Add missing documentation of pm_runtime_resume_and_get() (Alan
           Stern).
      
         - Add missing static inline stub for pm_runtime_has_no_callbacks() to
           pm_runtime.h and drop the unused try_to_freeze_nowarn() definition
           (YueHaibing).
      
         - Drop duplicate struct device declaration from pm.h and fix a
           structure type declaration in intel_rapl.h (Wan Jiabing).
      
         - Use dev_set_name() instead of an open-coded equivalent of it in the
           wakeup sources code and drop a redundant local variable
           initialization from it (Andy Shevchenko, Colin Ian King).
      
         - Use crc32 instead of md5 for e820 memory map integrity check during
           resume from hibernation on x86 (Chris von Recklinghausen).
      
         - Fix typos in comments in the system-wide and hibernation support
           code (Lu Jialin).
      
         - Modify the generic power domains (genpd) code to avoid resuming
           devices in the "prepare" phase of system-wide suspend and
           hibernation (Ulf Hansson).
      
         - Add Hygon Fam18h RAPL support to the intel_rapl power capping
           driver (Pu Wen).
      
         - Add MAINTAINERS entry for the dynamic thermal power management
           (DTPM) code (Daniel Lezcano).
      
         - Add devm variants of operating performance points (OPP) API
           functions and switch over some users of the OPP framework to the
           new resource-managed API (Yangtao Li and Dmitry Osipenko).
      
         - Update devfreq core:
      
            * Register devfreq devices as cooling devices on demand (Daniel
              Lezcano).
      
            * Add missing unlock opeation in devfreq_add_device() (Lukasz
              Luba).
      
            * Use the next frequency as resume_freq instead of the previous
              frequency when using the opp-suspend property (Dong Aisheng).
      
            * Check get_dev_status in devfreq_update_stats() (Dong Aisheng).
      
            * Fix set_freq path for the userspace governor in Kconfig (Dong
              Aisheng).
      
            * Remove invalid description of get_target_freq() (Dong Aisheng).
      
         - Update devfreq drivers:
      
            * imx8m-ddrc: Remove imx8m_ddrc_get_dev_status() and unneeded
              of_match_ptr() (Dong Aisheng, Fabio Estevam).
      
            * rk3399_dmc: dt-bindings: Add rockchip,pmu phandle and drop
              references to undefined symbols (Enric Balletbo i Serra, Gaël
              PORTAY).
      
            * rk3399_dmc: Use dev_err_probe() to simplify the code (Krzysztof
              Kozlowski).
      
            * imx-bus: Remove unneeded of_match_ptr() (Fabio Estevam).
      
         - Fix kernel-doc warnings in three places (Pierre-Louis Bossart).
      
         - Fix typo in the pm-graph utility code (Ricardo Ribalda)"
      
      * tag 'pm-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (74 commits)
        PM: wakeup: remove redundant assignment to variable retval
        PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check
        cpufreq: Kconfig: fix documentation links
        PM: wakeup: use dev_set_name() directly
        PM: runtime: Add documentation for pm_runtime_resume_and_get()
        cpufreq: intel_pstate: Simplify intel_pstate_update_perf_limits()
        cpufreq: armada-37xx: Fix module unloading
        cpufreq: armada-37xx: Remove cur_frequency variable
        cpufreq: armada-37xx: Fix determining base CPU frequency
        cpufreq: armada-37xx: Fix driver cleanup when registration failed
        clk: mvebu: armada-37xx-periph: Fix workaround for switching from L1 to L0
        clk: mvebu: armada-37xx-periph: Fix switching CPU freq from 250 Mhz to 1 GHz
        cpufreq: armada-37xx: Fix the AVS value for load L1
        clk: mvebu: armada-37xx-periph: remove .set_parent method for CPU PM clock
        cpufreq: armada-37xx: Fix setting TBG parent for load levels
        cpuidle: Fix ARM_QCOM_SPM_CPUIDLE configuration
        cpuidle: tegra: Remove do_idle firmware call
        cpuidle: tegra: Fix C7 idling state on Tegra114
        PM: sleep: fix typos in comments
        cpufreq: Remove unused for_each_policy macro
        ...
      5469f160
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · d8f9176b
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These update the ACPICA code in the kernel to the most recent upstream
        revision including (but not limited to) new material introduced in the
        6.4 version of the spec, update message printing in the ACPI-related
        code, address a few issues and clean up code in a number of places.
      
        Specifics:
      
         - Update ACPICA code in the kernel to upstream revision 20210331
           including the following changes:
      
            * Add parsing for IVRS IVHD 40h and device entry F0h (Alexander
              Monakov).
      
            * Add new CEDT table for CXL 2.0 and iASL support for it (Ben
              Widawsky, Bob Moore).
      
            * NFIT: add Location Cookie field (Bob Moore).
      
            * HMAT: add new fields/flags (Bob Moore).
      
            * Add new flags in SRAT (Bob Moore).
      
            * PMTT: add new fields/structures (Bob Moore).
      
            * Add CSI2Bus resource template (Bob Moore).
      
            * iASL: Decode subtable type field for VIOT (Bob Moore).
      
            * Fix various typos and spelling mistakes (Colin Ian King).
      
            * Add new predefined objects _BPC, _BPS, and _BPT (Erik Kaneda).
      
            * Add USB4 capabilities UUID (Erik Kaneda).
      
            * Add CXL ACPI device ID and _CBR object (Erik Kaneda).
      
            * MADT: add Multiprocessor Wakeup Structure (Erik Kaneda).
      
            * PCCT: add support for subtable type 5 (Erik Kaneda).
      
            * PPTT: add new version of subtable type 1 (Erik Kaneda).
      
            * Add SDEV secure access components (Erik Kaneda).
      
            * Add support for PHAT table (Erik Kaneda).
      
            * iASL: Add definitions for the VIOT table (Jean-Philippe
              Brucker).
      
            * acpisrc: Add missing conversion for VIOT support (Jean-Philippe
              Brucker).
      
            * IORT: Updates for revision E.b (Shameer Kolothum).
      
         - Rearrange message printing in ACPI-related code to avoid using the
           ACPICA's internal message printing macros outside ACPICA and do
           some related code cleanups (Rafael Wysocki).
      
         - Modify the device enumeration code to turn off all of the unused
           ACPI power resources at the end (Rafael Wysocki).
      
         - Change the ACPI power resources handling code to turn off unused
           ACPI power resources without checking their status which should not
           be necessary by the spec (Rafael Wysocki).
      
         - Add empty stubs for CPPC-related functions to be used when
           CONFIG_ACPI_CPPC_LIB is not set (Rafael Wysocki).
      
         - Simplify device enumeration code (Rafael Wysocki).
      
         - Change device enumeration code to use match_string() for string
           matching (Andy Shevchenko).
      
         - Modify irqresource_disabled() to retain the resouce flags that have
           been set already (Angela Czubak).
      
         - Add native backlight whitelist entry for GA401/GA502/GA503 (Luke
           Jones).
      
         - Modify the ACPI backlight driver to let the native backlight
           handling take over on hardware-reduced systems (Hans de Goede).
      
         - Introduce acpi_dev_get() and switch over the ACPI core code to
           using it (Andy Shevchenko).
      
         - Use kobj_attribute as callback argument instead of a local struct
           type in the CPPC linrary code (Nathan Chancellor).
      
         - Drop unneeded initializatio of a static variable from the ACPI
           processor driver (Tian Tao).
      
         - Drop unnecessary local variable assignment from the ACPI APEI code
           (Colin Ian King).
      
         - Document for_each_acpi_dev_match() macro (Andy Shevchenko).
      
         - Address assorted coding style issues in multiple places (Xiaofei
           Tan).
      
         - Capitalize TLAs in a few comments (Andy Shevchenko).
      
         - Correct assorted typos in comments (Tom Saeger)"
      
      * tag 'acpi-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (68 commits)
        ACPI: video: use native backlight for GA401/GA502/GA503
        ACPI: APEI: remove redundant assignment to variable rc
        ACPI: utils: Capitalize abbreviations in the comments
        ACPI: utils: Document for_each_acpi_dev_match() macro
        ACPI: bus: Introduce acpi_dev_get() and reuse it in ACPI code
        ACPI: scan: Utilize match_string() API
        resource: Prevent irqresource_disabled() from erasing flags
        ACPI: CPPC: Replace cppc_attr with kobj_attribute
        ACPI: scan: Call acpi_get_object_info() from acpi_set_pnp_ids()
        ACPI: scan: Drop sta argument from acpi_init_device_object()
        ACPI: scan: Drop sta argument from acpi_add_single_object()
        ACPI: scan: Rearrange checks in acpi_bus_check_add()
        ACPI: scan: Fold acpi_bus_type_and_status() into its caller
        ACPI: video: Check LCD flag on ACPI-reduced-hardware devices
        ACPI: utils: Add acpi_reduced_hardware() helper
        ACPI: dock: fix some coding style issues
        ACPI: sysfs: fix some coding style issues
        ACPI: PM: add a missed blank line after declarations
        ACPI: custom_method: fix a coding style issue
        ACPI: CPPC: fix some coding style issues
        ...
      d8f9176b
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 47080f22
      Linus Torvalds authored
      Pull hwmon updates from Guenter Roeck:
       "The most notable change is the removal of the amd_energy driver. It
        was rendered all but unusable by making its attributes privileged-only
        to work around a security issue. A suggested remedy was rejected by
        AMD, so the only real solution was to remove the driver. For the
        future, we'll have to make sure that no privileged-access-only drivers
        are accepted into the hwmon subsystem in the first place. The hwmon
        ABI document was updated accordingly.
      
        Other changes:
      
        PMBus drivers:
         - Added driver for MAX15301
         - Added driver for BluTek BPA-RS600
         - Added driver for fsp-3y PSUs and PDUs
         - Added driver for Infineon IR36021
         - Added driver for ST STPDDC60
         - Added support for TI TPS53676 to tps53679 driver
         - Introduced PMBUS symbol namespace. This was made necessary by a
           suggestion to use its exported functions from outside the hwmon
           subsystem.
         - Minor improvements and bug fixes
      
        New drivers:
         - Driver for NZXT Kraken X42/X52/X62/X72
      
        Driver enhancements:
         - Added support for Intel D5005 to intel-m10-bmc-hwmon driver
         - Added support for NCT6686D to nct6683 driver
      
        Other:
         - Converted sch5627 and amd9240 drivers to
           hwmon_device_register_with_info()
         - Added support for fan drawers capability and present registers to
           mlxreg-fan driver
         - Added Dell Latitude E7440 to fan control whitelist in dell-smm
           driver
         - Replaced snprintf in show functions with sysfs_emit. Done with
           coccinelle script for all drivers to preempt endless per-driver
           submissions of the same change.
         - Use kobj_to_dev().  Another coccinelle based change to preempt
           endless per-driver submissions of the same change.
         - Various minor fixes and improvements"
      
      * tag 'hwmon-for-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (38 commits)
        hwmon: Remove amd_energy driver
        hwmon: Clarify scope of attribute access
        hwmon: (pmbus) Introduce PMBUS symbol namespace
        hwmon: (pmbus) Add pmbus driver for MAX15301
        hwmon: (sch5627) Remove unnecessary error path
        hwmon: (sch5627) Use devres function
        hwmon: (pmbus/pxe1610) don't bail out when not all pages are active
        hwmon: Add driver for fsp-3y PSUs and PDUs
        hwmon: (intel-m10-bmc-hwmon) add sensor support of Intel D5005 card
        hwmon: (sch5627) Split sch5627_update_device()
        hwmon: (sch5627) Convert to hwmon_device_register_with_info()
        hwmon: (nct6683) remove useless function
        hwmon: (dell-smm) Add Dell Latitude E7440 to fan control whitelist
        MAINTAINERS: Add keyword pattern for hwmon registration functions
        hwmon: (mlxreg-fan) Add support for fan drawers capability and present registers
        hwmon: (pmbus/tps53679) Add support for TI TPS53676
        dt-bindings: Add trivial device entry for TPS53676
        hwmon: (ftsteutates) Rudimentary typo fixes
        hwmon: (pmbus) Add driver for BluTek BPA-RS600
        dt-bindings: Add vendor prefix and trivial device for BluTek BPA-RS600
        ...
      47080f22
    • David Howells's avatar
      iov_iter: Four fixes for ITER_XARRAY · 3d14ec1f
      David Howells authored
      Fix four things[1] in the patch that adds ITER_XARRAY[2]:
      
       (1) Remove the address_space struct predeclaration.  This is a holdover
           from when it was ITER_MAPPING.
      
       (2) Fix _copy_mc_to_iter() so that the xarray segment updates count and
           iov_offset in the iterator before returning.
      
       (3) Fix iov_iter_alignment() to not loop in the xarray case.  Because the
           middle pages are all whole pages, only the end pages need be
           considered - and this can be reduced to just looking at the start
           position in the xarray and the iteration size.
      
       (4) Fix iov_iter_advance() to limit the size of the advance to no more
           than the remaining iteration size.
      Reported-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Tested-by: default avatarJeff Layton <jlayton@redhat.com>
      Tested-by: default avatarDave Wysochanski <dwysocha@redhat.com>
      Link: https://lore.kernel.org/r/YIVrJT8GwLI0Wlgx@zeniv-ca.linux.org.uk [1]
      Link: https://lore.kernel.org/r/161918448151.3145707.11541538916600921083.stgit@warthog.procyon.org.uk [2]
      3d14ec1f
    • Linus Torvalds's avatar
      Merge tag 'for-5.13-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 55ba0fe0
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "The updates this time are mostly stabilization, preparation and minor
        improvements.
      
        User visible improvements:
      
         - readahead for send, improving run time of full send by 10% and for
           incremental by 25%
      
         - make reflinks respect O_SYNC, O_DSYNC and S_SYNC flags
      
         - export supported sectorsize values in sysfs (currently only page
           size, more once full subpage support lands)
      
         - more graceful errors and warnings on 32bit systems when logical
           addresses for metadata reach the limit posed by unsigned long in
           page::index
            - error: fail mount if there's a metadata block beyond the limit
            - error: new metadata block would be at unreachable address
            - warn when 5/8th of the limit is reached, for 4K page systems
              it's 10T, for 64K page it's 160T
      
         - zoned mode
            - relocated zones get reset at the end instead of discard
            - automatic background reclaim of zones that have 75%+ of unusable
              space, the threshold is tunable in sysfs
      
        Fixes:
      
         - fsync and tree mod log fixes
      
         - fix inefficient preemptive reclaim calculations
      
         - fix exhaustion of the system chunk array due to concurrent
           allocations
      
         - fix fallback to no compression when racing with remount
      
         - preemptive fix for dm-crypt on zoned device that does not properly
           advertise zoned support
      
        Core changes:
      
         - add inode lock to synchronize mmap and other block updates (eg.
           deduplication, fallocate, fsync)
      
         - kmap conversions to new kmap_local API
      
         - subpage support (continued)
            - new helpers for page state/extent buffer tracking
            - metadata changes now support read and write
      
         - error handling through out relocation call paths
      
         - many other cleanups and code simplifications"
      
      * tag 'for-5.13-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (112 commits)
        btrfs: zoned: automatically reclaim zones
        btrfs: rename delete_unused_bgs_mutex to reclaim_bgs_lock
        btrfs: zoned: reset zones of relocated block groups
        btrfs: more graceful errors/warnings on 32bit systems when reaching limits
        btrfs: zoned: fix unpaired block group unfreeze during device replace
        btrfs: fix race when picking most recent mod log operation for an old root
        btrfs: fix metadata extent leak after failure to create subvolume
        btrfs: handle remount to no compress during compression
        btrfs: zoned: fail mount if the device does not support zone append
        btrfs: fix race between transaction aborts and fsyncs leading to use-after-free
        btrfs: introduce submit_eb_subpage() to submit a subpage metadata page
        btrfs: make lock_extent_buffer_for_io() to be subpage compatible
        btrfs: introduce write_one_subpage_eb() function
        btrfs: introduce end_bio_subpage_eb_writepage() function
        btrfs: check return value of btrfs_commit_transaction in relocation
        btrfs: do proper error handling in merge_reloc_roots
        btrfs: handle extent corruption with select_one_root properly
        btrfs: cleanup error handling in prepare_to_merge
        btrfs: do not panic in __add_reloc_root
        btrfs: handle __add_reloc_root failures in btrfs_recover_relocation
        ...
      55ba0fe0
    • Linus Torvalds's avatar
      Merge tag '5.12-rc-smb3-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6 · 2a19866b
      Linus Torvalds authored
      Pull cifs updates from Steve French:
      
       - improvements to root directory metadata caching
      
       - addition of new "rasize" mount parameter which can significantly
         increase read ahead performance (e.g. copy can be much faster,
         especially with multichannel)
      
       - addition of support for insert and collapse range
      
       - improvements to error handling in mount
      
      * tag '5.12-rc-smb3-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6: (40 commits)
        cifs: update internal version number
        smb3: add rasize mount parameter to improve readahead performance
        smb3: limit noisy error
        cifs: fix leak in cifs_smb3_do_mount() ctx
        cifs: remove unnecessary copies of tcon->crfid.fid
        cifs: Return correct error code from smb2_get_enc_key
        cifs: fix out-of-bound memory access when calling smb3_notify() at mount point
        smb2: fix use-after-free in smb2_ioctl_query_info()
        cifs: export supported mount options via new mount_params /proc file
        cifs: log mount errors using cifs_errorf()
        cifs: add fs_context param to parsing helpers
        cifs: make fs_context error logging wrapper
        cifs: add FALLOC_FL_INSERT_RANGE support
        cifs: add support for FALLOC_FL_COLLAPSE_RANGE
        cifs: check the timestamp for the cached dirent when deciding on revalidate
        cifs: pass the dentry instead of the inode down to the revalidation check functions
        cifs: add a timestamp to track when the lease of the cached dir was taken
        cifs: add a function to get a cached dir based on its dentry
        cifs: Grab a reference for the dentry of the cached directory during the lifetime of the cache
        cifs: store a pointer to the root dentry in cifs_sb_info once we have completed mounting the share
        ...
      2a19866b
    • Linus Torvalds's avatar
      Merge tag 'nfsd-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · c065c429
      Linus Torvalds authored
      Pull nfsd updates from Chuck Lever:
       "Highlights:
      
         - Update NFSv2 and NFSv3 XDR encoding functions
      
         - Add batch Receive posting to the server's RPC/RDMA transport (take 2)
      
         - Reduce page allocator traffic in svcrdma"
      
      * tag 'nfsd-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux: (70 commits)
        NFSD: Use DEFINE_SPINLOCK() for spinlock
        sunrpc: Remove unused function ip_map_lookup
        NFSv4.2: fix copy stateid copying for the async copy
        UAPI: nfsfh.h: Replace one-element array with flexible-array member
        svcrdma: Clean up dto_q critical section in svc_rdma_recvfrom()
        svcrdma: Remove svc_rdma_recv_ctxt::rc_pages and ::rc_arg
        svcrdma: Remove sc_read_complete_q
        svcrdma: Single-stage RDMA Read
        SUNRPC: Move svc_xprt_received() call sites
        SUNRPC: Export svc_xprt_received()
        svcrdma: Retain the page backing rq_res.head[0].iov_base
        svcrdma: Remove unused sc_pages field
        svcrdma: Normalize Send page handling
        svcrdma: Add a "deferred close" helper
        svcrdma: Maintain a Receive water mark
        svcrdma: Use svc_rdma_refresh_recvs() in wc_receive
        svcrdma: Add a batch Receive posting mechanism
        svcrdma: Remove stale comment for svc_rdma_wc_receive()
        svcrdma: Provide an explanatory comment in CMA event handler
        svcrdma: RPCDBG_FACILITY is no longer used
        ...
      c065c429
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · b5b3097d
      Linus Torvalds authored
      Pull erofs updates from Gao Xiang:
       "In this cycle, we would like to introduce a new feature called big
        pcluster so EROFS can compress file data into more than 1 fs block and
        different pcluster size can be selected for each (sub-)files by
        design.
      
        The current EROFS test results on my laptop are [1]:
      
          Testscript: erofs-openbenchmark
          Testdata: enwik9 (1000000000 bytes)
           ________________________________________________________________
          |  file system  |   size    | seq read | rand read | rand9m read |
          |_______________|___________|_ MiB/s __|__ MiB/s __|___ MiB/s ___|
          |___erofs_4k____|_556879872_|_ 781.4 __|__ 55.3 ___|___ 25.3  ___|
          |___erofs_16k___|_452509696_|_ 864.8 __|_ 123.2 ___|___ 20.8  ___|
          |___erofs_32k___|_415223808_|_ 899.8 __|_ 105.8 _*_|___ 16.8 ____|
          |___erofs_64k___|_393814016_|_ 906.6 __|__ 66.6 _*_|___ 11.8 ____|
          |__squashfs_8k__|_556191744_|_  64.9 __|__ 19.3 ___|____ 9.1 ____|
          |__squashfs_16k_|_502661120_|_  98.9 __|__ 38.0 ___|____ 9.8 ____|
          |__squashfs_32k_|_458784768_|_ 115.4 __|__ 71.6 _*_|___ 10.0 ____|
          |_squashfs_128k_|_398204928_|_ 257.2 __|_ 253.8 _*_|___ 10.9 ____|
          |____ext4_4k____|____()_____|_ 786.6 __|__ 28.6 ___|___ 27.8 ____|
      
        which has been verified but I'd like warn it as experimental for a
        while. This matches erofs-utils dev branch and I'll also release a new
        userspace version for this later.
      
        Apart from that, several improvements are also included: eg complete a
        missing case for inplace I/O, optimize endio decompression logic for
        non-atomic contexts and support adjustable sliding window size, ... In
        addition to those, there are some cleanups as always.
      
        Summary:
      
         - avoid memory failure when applying rolling decompression
      
         - optimize endio decompression logic for non-atomic contexts
      
         - complete a missing case which can be safely selected for inplace
           I/O and thus decreasing more memory footprint
      
         - check unsupported on-disk inode i_format strictly
      
         - support adjustable lz4 sliding window size to decrease runtime
           memory footprint
      
         - support on-disk compression configurations
      
         - support big pcluster decompression
      
         - several code cleanups / spelling correction"
      
      * tag 'erofs-for-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs: (21 commits)
        erofs: enable big pcluster feature
        erofs: support decompress big pcluster for lz4 backend
        erofs: support parsing big pcluster compact indexes
        erofs: support parsing big pcluster compress indexes
        erofs: adjust per-CPU buffers according to max_pclusterblks
        erofs: add big physical cluster definition
        erofs: fix up inplace I/O pointer for big pcluster
        erofs: introduce physical cluster slab pools
        erofs: introduce multipage per-CPU buffers
        erofs: reserve physical_clusterbits[]
        erofs: Clean up spelling mistakes found in fs/erofs
        erofs: add on-disk compression configurations
        erofs: introduce on-disk lz4 fs configurations
        erofs: support adjust lz4 history window size
        erofs: introduce erofs_sb_has_xxx() helpers
        erofs: add unsupported inode i_format check
        erofs: don't use erofs_map_blocks() any more
        erofs: complete a missing case for inplace I/O
        erofs: use sync decompression for atomic contexts only
        erofs: use workqueue decompression for atomic contexts only
        ...
      b5b3097d
    • Linus Torvalds's avatar
      Merge tag 'locks-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux · befbfe07
      Linus Torvalds authored
      Pull file locking updates from Jeff Layton:
       "When we reworked the blocked locks into a tree structure instead of a
        flat list a few releases ago, we lost the ability to see all of the
        file locks in /proc/locks. Luo's patch fixes it to dump out all of the
        blocked locks instead, which restores the full output.
      
        This changes the format of /proc/locks as the blocked locks are shown
        at multiple levels of indentation now, but lslocks (the only common
        program I've ID'ed that scrapes this info) seems to be OK with that.
      
        Tian also contributed a small patch to remove a useless assignment"
      
      * tag 'locks-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux:
        fs/locks: remove useless assignment in fcntl_getlk
        fs/locks: print full locks information
      befbfe07
    • Linus Torvalds's avatar
      Merge tag 'docs-5.13' of git://git.lwn.net/linux · 2f9ef055
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "It's been a relatively busy cycle in docsland, though more than
        usually well contained to Documentation/ itself. Highlights include:
      
         - The Chinese translators have been busy and show no signs of
           stopping anytime soon. Italian has also caught up.
      
         - Aditya Srivastava has been working on improvements to the
           kernel-doc script.
      
         - Thorsten continues his work on reporting-issues.rst and related
           documentation around regression reporting.
      
         - Lots of documentation updates, typo fixes, etc. as usual"
      
      * tag 'docs-5.13' of git://git.lwn.net/linux: (139 commits)
        docs/zh_CN: add openrisc translation to zh_CN index
        docs/zh_CN: add openrisc index.rst translation
        docs/zh_CN: add openrisc todo.rst translation
        docs/zh_CN: add openrisc openrisc_port.rst translation
        docs/zh_CN: add core api translation to zh_CN index
        docs/zh_CN: add core-api index.rst translation
        docs/zh_CN: add core-api irq index.rst translation
        docs/zh_CN: add core-api irq irqflags-tracing.rst translation
        docs/zh_CN: add core-api irq irq-domain.rst translation
        docs/zh_CN: add core-api irq irq-affinity.rst translation
        docs/zh_CN: add core-api irq concepts.rst translation
        docs: sphinx-pre-install: don't barf on beta Sphinx releases
        scripts: kernel-doc: improve parsing for kernel-doc comments syntax
        docs/zh_CN: two minor fixes in zh_CN/doc-guide/
        Documentation: dev-tools: Add Testing Overview
        docs/zh_CN: add translations in zh_CN/dev-tools/gcov
        docs: reporting-issues: make people CC the regressions list
        MAINTAINERS: add regressions mailing list
        doc:it_IT: align Italian documentation
        docs/zh_CN: sync reporting-issues.rst
        ...
      2f9ef055
    • Linus Torvalds's avatar
      Merge tag 'arm-apple-m1-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 0c855563
      Linus Torvalds authored
      Pull ARM Apple M1 platform support from Arnd Bergmann:
       "The Apple M1 is the processor used it all current generation Apple
        Macintosh computers. Support for this platform so far is rudimentary,
        but it boots and can use framebuffer and serial console over a special
        USB cable.
      
        Support for several essential on-chip devices (USB, PCIe, IOMMU, NVMe)
        is work in progress but was not ready in time.
      
        A very detailed description of what works is in the commit message of
        commit 1bb2fd38 ("Merge tag 'm1-soc-bringup-v5' [..]") and on the
        AsahiLinux wiki"
      
      Link: https://lore.kernel.org/linux-arm-kernel/bdb18e9f-fcd7-1e31-2224-19c0e5090706@marcan.st/
      
      * tag 'arm-apple-m1-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        asm-generic/io.h: Unbork ioremap_np() declaration
        arm64: apple: Add initial Apple Mac mini (M1, 2020) devicetree
        dt-bindings: display: Add apple,simple-framebuffer
        arm64: Kconfig: Introduce CONFIG_ARCH_APPLE
        irqchip/apple-aic: Add support for the Apple Interrupt Controller
        dt-bindings: interrupt-controller: Add DT bindings for apple-aic
        arm64: Move ICH_ sysreg bits from arm-gic-v3.h to sysreg.h
        of/address: Add infrastructure to declare MMIO as non-posted
        asm-generic/io.h: implement pci_remap_cfgspace using ioremap_np
        arm64: Implement ioremap_np() to map MMIO as nGnRnE
        docs: driver-api: device-io: Document ioremap() variants & access funcs
        docs: driver-api: device-io: Document I/O access functions
        asm-generic/io.h:  Add a non-posted variant of ioremap()
        arm64: arch_timer: Implement support for interrupt-names
        dt-bindings: timer: arm,arch_timer: Add interrupt-names support
        arm64: cputype: Add CPU implementor & types for the Apple M1 cores
        dt-bindings: arm: cpus: Add apple,firestorm & icestorm compatibles
        dt-bindings: arm: apple: Add bindings for Apple ARM platforms
        dt-bindings: vendor-prefixes: Add apple prefix
      0c855563
    • Linus Torvalds's avatar
      Merge tag 'arm-newsoc-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 6b0fbc54
      Linus Torvalds authored
      Pull ARM Nuvoton WPCM450 platform support from Arnd Bergmann:
       "The Nuvoton WPCM450 BMC is an older chip based on the ARM926 CPU core
        that remains in use on Supermicro X9 server boards among others.
      
        Support gets added for a particular server board using this SoC along
        with the basic platform bringup.
      
        As the platform is a predecessor to the npcm7xx platform we already
        support, it is added to the same directory, despite using a different
        name. It also seems to be related to the older w90x900/nuc9xx platform
        that was removed last year"
      
      * tag 'arm-newsoc-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        ARM: config: Add WPCM to multi v5
        MAINTAINERS: Add entry for Nuvoton WPCM450
        ARM: dts: Add devicetree for Supermicro X9SCi-LN4F based on WPCM450
        ARM: dts: Add devicetree for Nuvoton WPCM450 BMC chip
        watchdog: npcm: Add support for WPCM450
        ARM: npcm: Introduce Nuvoton WPCM450 SoC
        dt-bindings: watchdog: npcm: Add nuvoton,wpcm450-wdt
        dt-bindings: arm: npcm: Add nuvoton,wpcm450 compatible string
        dt-bindings: vendor-prefixes: Add Supermicro
        ARM: dts: Add board-specific compatible string to npcm750-evb devicetree
        dt-bindings: arm: Convert nuvoton,npcm750 binding to YAML
      6b0fbc54
    • Linus Torvalds's avatar
      Merge tag 'arm-dt-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · f7857bf3
      Linus Torvalds authored
      Pull ARM devicetree updates from Arnd Bergmann:
       "There are six new SoCs added this time.
      
        Apple M1 and Nuvoton WPCM450 have separate branches because they are
        new SoC families that require changes outside of device tree files.
        The other four are variations of already supported chips and get
        merged through this branch:
      
         - STMicroelectronics STM32H750 is one of many variants of STM32
           microcontrollers based on the Cortex-M7 core.
      
           This is particularly notable since we rarely add support for new
           MMU-less chips these days. In this case, the board that gets added
           along with the platform is not a SoC reference platform but the
           "Art Pi" (https://art-pi.gitee.io/website/) machine that was
           originally design for the RT-Thread RTOS.
      
         - NXP i.MX8QuadMax is a variant of the growing i.MX8
           embedded/industrial SoC family, using two Cortex-A72 and four
           Cortex-A53 cores.
      
           It gets added along with its reference board, the "NXP i.MX8QuadMax
           Multisensory Enablement Kit".
      
         - Qualcomm SC7280 is a Laptop SoC following the SC7180 (Snapdragon
           7c) that is used in some Chromebooks and Windows laptops.
      
           Only a reference board is added for the moment.
      
         - TI AM64x Sita4ra is a new version of the K3 SoC family for
           industrial control, motor control, remote IO, IoT gateway etc.,
           similar to the older AM65x family.
      
           Two reference machines are added alongside.
      
        Among the newly added machines, there is a very clear skew towards
        64-bit machines now, with 12 32-bit machines compared to 23 64-bit
        machines. The full list sorted by SoC is:
      
         - ASpeed AST2500 BMC: ASRock E3C246D4I Xeon server board
         - Allwinner A10: Topwise A721 Tablet
         - Amlogic GXL: MeCool KII TV box
         - Amlogic GXM: Mecool KIII, Minix Neo U9-H TV boxes
         - Broadcom BCM4908: TP-Link Archer C2300 V1 router
         - MStar SSD202D: M5Stack UnitV2 camera
         - Marvell Armada 38x: ATL-x530 ethernet switch
         - Mediatek MT8183 Chromebooks: Lenovo 10e, Acer Spin 311, Asus Flip
           CM3, Asus Detachable CM3
         - Mediatek MT8516/MT8183: OLogic Pumpkin Board
         - NXP i.MX7: reMarkable Tablet
         - NXP i.MX8M: Kontron pitx-imx8m, Engicam i.Core MX8M Mini
         - Nuvoton NPCM730: Quanta GBS BMC
         - Qualcomm X55: Telit FN980 TLB SoM, Thundercomm TurboX T55 SoM
         - Qualcomm MSM8998: OnePlus 5/5T phones
         - Qualcomm SM8350: Snapdragon 888 Mobile Hardware Development Kit
         - Rockchip RK3399: NanoPi R4S board
         - STM32MP1: Engicam MicroGEA STM32MP1 MicroDev 2.0 and SOM, EDIMM2.2
           Starter Kit, Carrier, SOM
         - TI AM65: Siemens SIMATIC IOT2050 gateway
      
        There is notable work going into extending already supported machines
        and SoCs:
      
         - ASpeed AST2500
         - Allwinner A23, A83t, A31, A64, H6
         - Amlogic G12B
         - Broadcom BCM4908
         - Marvell Armada 7K/8K/CN91xx
         - Mediatek MT6589, MT7622, MT8173, MT8183, MT8195
         - NXP i.MX8Q, i.MX8MM, i.MX8MP
         - Qualcomm MSM8916, SC7180, SDM845, SDX55, SM8350
         - Renesas R-Car M3, V3U
         - Rockchip RK3328, RK3399
         - STEricsson U8500
         - STMicroelectronics STM32MP141
         - Samsung Exynos 4412
         - TI K3-AM65, K3-J7200
         - TI OMAP3
      
        Among the treewide cleanups and bug fixes, two parts stand out:
      
         - There are a number of cleanups for issues pointed out by 'make
           dtbs_check' this time, and I expect more to come in the future as
           we increasingly check for regressions.
      
         - After a change to the MMC subsystem that can lead to unpredictable
           device numbers, several platforms add 'aliases' properties for
           these to give each MMC controller a fixed number"
      
      * tag 'arm-dt-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (516 commits)
        dt-bindings: mali-bifrost: add dma-coherent
        arm64: dts: amlogic: misc DT schema fixups
        arm64: dts: qcom: sc7180: Update iommu property for simultaneous playback
        arm64: dts: qcom: sc7180: pompom: Add "dmic_clk_en" + sound model
        arm64: dts: qcom: sc7180: coachz: Add "dmic_clk_en"
        ARM: dts: mstar: Add a dts for M5Stack UnitV2
        dt-bindings: arm: mstar: Add compatible for M5Stack UnitV2
        dt-bindings: vendor-prefixes: Add vendor prefix for M5Stack
        arm64: dts: mt8183: fix dtbs_check warning
        arm64: dts: mt8183-pumpkin: fix dtbs_check warning
        ARM: dts: aspeed: tiogapass: add hotplug controller
        ARM: dts: aspeed: amd-ethanolx: Enable all used I2C busses
        ARM: dts: aspeed: Rainier: Update to pass 2 hardware
        ARM: dts: aspeed: Rainier 1S4U: Fix fan nodes
        ARM: dts: aspeed: Rainier: Fix humidity sensor bus address
        ARM: dts: aspeed: Rainier: Fix PCA9552 on bus 8
        ARM: dts: qcom: sdx55: add IPA information
        ARM: dts: qcom: sdx55: Add basic devicetree support for Thundercomm T55
        dt-bindings: arm: qcom: Add binding for Thundercomm T55 kit
        ARM: dts: qcom: sdx55: Add basic devicetree support for Telit FN980 TLB
        ...
      f7857bf3
    • Linus Torvalds's avatar
      Merge tag 'arm-drivers-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 37f00ab4
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "Updates for SoC specific drivers include a few subsystems that have
        their own maintainers but send them through the soc tree:
      
        TEE/OP-TEE:
         - Add tracepoints around calls to secure world
      
        Memory controller drivers:
         - Minor fixes for Renesas, Exynos, Mediatek and Tegra platforms
         - Add debug statistics to Tegra20 memory controller
         - Update Tegra bindings and convert to dtschema
      
        ARM SCMI Firmware:
         - Support for modular SCMI protocols and vendor specific extensions
         - New SCMI IIO driver
         - Per-cpu DVFS
      
        The other driver changes are all from the platform maintainers
        directly and reflect the drivers that don't fit into any other
        subsystem as well as treewide changes for a particular platform.
      
        SoCFPGA:
         - Various cleanups contributed by Krzysztof Kozlowski
      
        Mediatek:
         - add MT8183 support to mutex driver
         - MMSYS: use per SoC array to describe the possible routing
         - add MMSYS support for MT8183 and MT8167
         - add support for PMIC wrapper with integrated arbiter
         - add support for MT8192/MT6873
      
        Tegra:
         - Bug fixes to PMC and clock drivers
      
        NXP/i.MX:
         - Update SCU power domain driver to keep console domain power on.
         - Add missing ADC1 power domain to SCU power domain driver.
         - Update comments for single global power domain in SCU power domain
           driver.
         - Add i.MX51/i.MX53 unique id support to i.MX SoC driver.
      
        NXP/FSL SoC driver updates for v5.13
         - Add ACPI support for RCPM driver
         - Use generic io{read,write} for QE drivers after performance
           optimized for PowerPC
         - Fix QBMAN probe to cleanup HW states correctly for kexec
         - Various cleanup and style fix for QBMAN/QE/GUTS drivers
      
        OMAP:
         - Preparation to use devicetree for genpd
         - ti-sysc needs iorange check improved when the interconnect target
           module has no control registers listed
         - ti-sysc needs to probe l4_wkup and l4_cfg interconnects first to
           avoid issues with missing resources and unnecessary deferred probe
         - ti-sysc debug option can now detect more devices
         - ti-sysc now warns if an old incomplete devicetree data is found as
           we now rely on it being complete for am3 and 4
         - soc init code needs to check for prcm and prm nodes for omap4/5 and
           dra7
         - omap-prm driver needs to enable autoidle retention support for
           omap4
         - omap5 clocks are missing gpmc and ocmc clock registers
         - pci-dra7xx now needs to use builtin_platform_driver instead of
           using builtin_platform_driver_probe for deferred probe to work
      
        Raspberry Pi:
         - Fix-up all RPi firmware drivers so as for unbind to happen in an
           orderly fashion
         - Support for RPi's PoE hat PWM bus
      
        Qualcomm
         - Improved detection for SCM calling conventions
         - Support for OEM specific wifi firmware path
         - Added drivers for SC7280/SM8350: RPMH, LLCC< AOSS QMP"
      
      * tag 'arm-drivers-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (165 commits)
        soc: aspeed: fix a ternary sign expansion bug
        memory: mtk-smi: Add device-link between smi-larb and smi-common
        memory: samsung: exynos5422-dmc: handle clk_set_parent() failure
        memory: renesas-rpc-if: fix possible NULL pointer dereference of resource
        clk: socfpga: fix iomem pointer cast on 64-bit
        soc: aspeed: Adapt to new LPC device tree layout
        pinctrl: aspeed-g5: Adapt to new LPC device tree layout
        ipmi: kcs: aspeed: Adapt to new LPC DTS layout
        ARM: dts: Remove LPC BMC and Host partitions
        dt-bindings: aspeed-lpc: Remove LPC partitioning
        soc: fsl: enable acpi support in RCPM driver
        soc: qcom: mdt_loader: Detect truncated read of segments
        soc: qcom: mdt_loader: Validate that p_filesz < p_memsz
        soc: qcom: pdr: Fix error return code in pdr_register_listener
        firmware: qcom_scm: Fix kernel-doc function names to match
        firmware: qcom_scm: Suppress sysfs bind attributes
        firmware: qcom_scm: Workaround lack of "is available" call on SC7180
        firmware: qcom_scm: Reduce locking section for __get_convention()
        firmware: qcom_scm: Make __qcom_scm_is_call_available() return bool
        Revert "soc: fsl: qe: introduce qe_io{read,write}* wrappers"
        ...
      37f00ab4
    • Linus Torvalds's avatar
      Merge tag 'arm-defconfig-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 2b90506a
      Linus Torvalds authored
      Pull ARM defconfig updates from Arnd Bergmann:
       "The usual set of defconfig updates, enabling newly added drivers.
      
        There are platform updates for at91, omap, ux500 and qcom platforms,
        and a number of changes to the arm64 defconfig"
      
      * tag 'arm-defconfig-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (34 commits)
        ARM: configs: qcom_defconfig: Reduce CMA size to 64MB
        ARM: configs: qcom_defconfig: Enable GLINK SMEM driver
        ARM: configs: qcom_defconfig: Enable SDX55 interconnect driver
        ARM: configs: qcom_defconfig: Enable Q6V5_PAS remoteproc driver
        ARM: configs: qcom_defconfig: Enable CPUFreq support
        ARM: configs: qcom_defconfig: Enable SDX55 A7 PLL and APCS clock driver
        ARM: configs: qcom_defconfig: Enable APCS IPC mailbox driver
        ARM: configs: Remove REGULATOR_USERSPACE_CONSUMER
        ARM: configs: ux500: Update for new drivers
        arm64: defconfig: Enable options to support panel display for Mediatek Chromebooks
        arm64: defconfig: Allow mt8173-based boards to boot from usb
        ARM: configs: at91: Modernize UBI defconfig part
        ARM: configs: at91: Add USB Video webcam class
        ARM: configs: at91: Add mtd tests as modules
        ARM: configs: at91: sama5: Add audio MIKROE PROTO board
        ARM: configs: at91: sama5: Enable LAN78XX as module
        ARM: configs: at91: sama5: PIOBU as built-in
        ARM: configs: at91: sama5: MCP16502 regulator as built-in
        ARM: configs: at91: sama5: enable the Hantro G1 engine
        ARM: configs: at91: sama5: update with savedefconfig
        ...
      2b90506a
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 01d71368
      Linus Torvalds authored
      Pull ARM SoC updates from Arnd Bergmann:
       "Almost all SoC code changes this time are for the TI OMAP platform,
        which continues its decade-long quest to move from describing a
        complex SoC in code to device tree.
      
        Aside from this, the Uniphier platform has a new maintainer and some
        platforms have minor bugfixes and cleanups that were not urgent enough
        for v5.12"
      
      * tag 'arm-soc-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (96 commits)
        MAINTAINERS: Update ARM/UniPhier SoCs maintainers and status
        mailmap: Update email address for Nicolas Saenz
        MAINTAINERS: Update BCM2711/BCM2335 maintainer's mail
        ARM: exynos: correct kernel doc in platsmp
        ARM: hisi: use the correct HiSilicon copyright
        ARM: ux500: make ux500_cpu_die static
        ARM: s3c: Use pwm_get() in favour of pwm_request() in RX1950
        ARM: OMAP1: fix incorrect kernel-doc comment syntax in file
        ARM: OMAP2+: fix incorrect kernel-doc comment syntax in file
        ARM: OMAP2+: Use DEFINE_SPINLOCK() for spinlock
        ARM: at91: pm: Move prototypes to mutually included header
        ARM: OMAP2+: use true and false for bool variable
        ARM: OMAP2+: add missing call to of_node_put()
        ARM: OMAP2+: Replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE
        ARM: imx: Kconfig: Fix typo in help
        ARM: mach-imx: Fix a spelling in the file pm-imx5.c
        bus: ti-sysc: Warn about old dtb for dra7 and omap4/5
        ARM: OMAP2+: Stop building legacy code for dra7 and omap4/5
        ARM: OMAP2+: Drop legacy platform data for omap5 hwmod
        ARM: OMAP2+: Drop legacy platform data for omap5 l3
        ...
      01d71368
    • Linus Torvalds's avatar
      Merge tag 'usb-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · ef124412
      Linus Torvalds authored
      Pull USB and Thunderbolt updates from Greg KH:
       "Here is the big set of USB and Thunderbolt driver updates for
        5.13-rc1.
      
        Lots of little things in here, with loads of tiny fixes and cleanups
        over these drivers, as well as these "larger" changes:
      
         - thunderbolt updates and new features added
      
         - xhci driver updates and split out of a mediatek-specific xhci
           driver from the main xhci module to make it easier to work with
           (something that I have been wanting for a while).
      
         - loads of typec feature additions and updates
      
         - dwc2 driver updates
      
         - dwc3 driver updates
      
         - gadget driver fixes and minor updates
      
         - loads of usb-serial cleanups and fixes and updates
      
         - usbip documentation updates and fixes
      
         - lots of other tiny USB driver updates
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (371 commits)
        usb: Fix up movement of USB core kerneldoc location
        usb: dwc3: gadget: Handle DEV_TXF_FLUSH_BYPASS capability
        usb: dwc3: Capture new capability register GHWPARAMS9
        usb: gadget: prevent a ternary sign expansion bug
        usb: dwc3: core: Do core softreset when switch mode
        usb: dwc2: Get rid of useless error checks in suspend interrupt
        usb: dwc2: Update dwc2_handle_usb_suspend_intr function.
        usb: dwc2: Add exit hibernation mode before removing drive
        usb: dwc2: Add hibernation exiting flow by system resume
        usb: dwc2: Add hibernation entering flow by system suspend
        usb: dwc2: Allow exit hibernation in urb enqueue
        usb: dwc2: Move exit hibernation to dwc2_port_resume() function
        usb: dwc2: Move enter hibernation to dwc2_port_suspend() function
        usb: dwc2: Clear GINTSTS_RESTOREDONE bit after restore is generated.
        usb: dwc2: Clear fifo_map when resetting core.
        usb: dwc2: Allow exiting hibernation from gpwrdn rst detect
        usb: dwc2: Fix hibernation between host and device modes.
        usb: dwc2: Fix host mode hibernation exit with remote wakeup flow.
        usb: dwc2: Reset DEVADDR after exiting gadget hibernation.
        usb: dwc2: Update exit hibernation when port reset is asserted
        ...
      ef124412
    • Linus Torvalds's avatar
      Merge tag 'tty-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · d08410d8
      Linus Torvalds authored
      Pull tty and serial driver updates from Greg KH:
       "Here is the big set of tty and serial driver updates for 5.13-rc1.
      
        Actually busy this release, with a number of cleanups happening:
      
         - much needed core tty cleanups by Jiri Slaby
      
         - removal of unused and orphaned old-style serial drivers. If anyone
           shows up with this hardware, it is trivial to restore these but we
           really do not think they are in use anymore.
      
         - fixes and cleanups from Johan Hovold on a number of termios setting
           corner cases that loads of drivers got wrong as well as removing
           unneeded code due to tty core changes from long ago that were never
           propagated out to the drivers
      
         - loads of platform-specific serial port driver updates and fixes
      
         - coding style cleanups and other small fixes and updates all over
           the tty/serial tree.
      
        All of these have been in linux-next for a while now with no reported
        issues"
      
      * tag 'tty-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (186 commits)
        serial: extend compile-test coverage
        serial: stm32: add FIFO threshold configuration
        dt-bindings: serial: 8250: update TX FIFO trigger level
        dt-bindings: serial: stm32: override FIFO threshold properties
        dt-bindings: serial: add RX and TX FIFO properties
        serial: xilinx_uartps: drop low-latency workaround
        serial: vt8500: drop low-latency workaround
        serial: timbuart: drop low-latency workaround
        serial: sunsu: drop low-latency workaround
        serial: sifive: drop low-latency workaround
        serial: txx9: drop low-latency workaround
        serial: sa1100: drop low-latency workaround
        serial: rp2: drop low-latency workaround
        serial: rda: drop low-latency workaround
        serial: owl: drop low-latency workaround
        serial: msm_serial: drop low-latency workaround
        serial: mpc52xx_uart: drop low-latency workaround
        serial: meson: drop low-latency workaround
        serial: mcf: drop low-latency workaround
        serial: lpc32xx_hs: drop low-latency workaround
        ...
      d08410d8
    • Linus Torvalds's avatar
      Merge tag 'staging-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 8900d92f
      Linus Torvalds authored
      Pull staging/IIO driver updates from Greg KH:
       "Here is the big set of staging and IIO driver updates for 5.13-rc1.
      
        Lots of little churn in here, and some larger churn as well. Major
        things are:
      
         - removal of wimax drivers, no one has this hardware anymore for this
           failed "experiment".
      
         - removal of the Google gasket driver, turns out no one wanted to
           maintain it or cares about it anymore, so they asked for it to be
           removed.
      
         - comedi finally moves out of the staging directory into drivers/comedi
      
           This is one of the oldest kernel subsystems around, being created
           in the 2.0 kernel days, and was one of the first things added to
           drivers/staging/ when that was created over 15 years ago.
      
           It should have been moved out of staging a long time ago, it's well
           maintained and used by loads of different devices in the real world
           every day. Nice to see this finally happen.
      
         - so many tiny coding style cleanups it's not funny.
      
           Perfect storm of at least 2 different intern project application
           deadlines combined to provide a huge number of new contributions in
           this area from people learning how to do kernel development. Great
           job to everyone involved here.
      
        There's also the normal updates for IIO drivers with new IIO drivers
        and updates all over that subsystem.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'staging-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (907 commits)
        staging: octeon: Use 'for_each_child_of_node'
        Staging: rtl8723bs: rtw_xmit: fixed tabbing issue
        staging: rtl8188eu: remove unused function parameters
        staging: rtl8188eu: cmdThread is a task_struct
        staging: rtl8188eu: remove constant variable and dead code
        staging: rtl8188eu: change bLeisurePs' type to bool
        staging: rtl8723bs: remove empty #ifdef block
        staging: rtl8723bs: remove unused DBG_871X_LEVEL macro declarations
        staging: rtl8723bs: split too long line
        staging: rtl8723bs: fix indentation in if block
        staging: rtl8723bs: fix code indent issue
        staging: rtl8723bs: replace DBG_871X_LEVEL logs with netdev_*()
        staging: rtl8192e: indent statement properly
        staging: rtl8723bs: Remove led_blink_hdl() and everything related
        staging: comedi: move out of staging directory
        staging: rtl8723bs: remove sdio_drv_priv structure
        staging: rtl8723bs: remove unused argument in function
        staging: rtl8723bs: remove DBG_871X_SEL_NL macro declaration
        staging: rtl8723bs: replace DBG_871X_SEL_NL with netdev_dbg()
        staging: rtl8723bs: fix indentation issue introduced by long line split
        ...
      8900d92f
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.13-rc1' of... · c01c0716
      Linus Torvalds authored
      Merge tag 'driver-core-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the "big" set of driver core changes for 5.13-rc1.
      
        Nothing major, just lots of little core changes and cleanups, notable
        things are:
      
         - finally set 'fw_devlink=on' by default.
      
           All reported issues with this have been shaken out over the past 9
           months or so, but we will be paying attention to any fallout here
           in case we need to revert this as the default boot value (symptoms
           of problems are a simple lack of booting)
      
         - fixes found to be needed by fw_devlink=on value in some subsystems
           (like clock).
      
         - delayed work initialization cleanup
      
         - driver core cleanups and minor updates
      
         - software node cleanups and tweaks
      
         - devtmpfs cleanups
      
         - minor debugfs cleanups
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'driver-core-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (53 commits)
        devm-helpers: Fix devm_delayed_work_autocancel() kerneldoc
        PM / wakeup: use dev_set_name() directly
        software node: Allow node addition to already existing device
        kunit: software node: adhear to KUNIT formatting standard
        node: fix device cleanups in error handling code
        kobject_uevent: remove warning in init_uevent_argv()
        debugfs: Make debugfs_allow RO after init
        Revert "driver core: platform: Make platform_get_irq_optional() optional"
        media: ipu3-cio2: Switch to use SOFTWARE_NODE_REFERENCE()
        software node: Introduce SOFTWARE_NODE_REFERENCE() helper macro
        software node: Imply kobj_to_swnode() to be no-op
        software node: Deduplicate code in fwnode_create_software_node()
        software node: Introduce software_node_alloc()/software_node_free()
        software node: Free resources explicitly when swnode_register() fails
        debugfs: drop pointless nul-termination in debugfs_read_file_bool()
        driver core: add helper for deferred probe reason setting
        driver core: Improve fw_devlink & deferred_probe_timeout interaction
        of: property: fw_devlink: Add support for remote-endpoint
        driver core: platform: Make platform_get_irq_optional() optional
        driver core: Replace printf() specifier and drop unneeded casting
        ...
      c01c0716
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 8e3a3249
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here is the big set of various smaller driver subsystem updates for
        5.13-rc1.
      
        Major bits in here are:
      
         - habanalabs driver updates
      
         - hwtracing driver updates
      
         - interconnect driver updates
      
         - mhi driver updates
      
         - extcon driver updates
      
         - fpga driver updates
      
         - new binder features added
      
         - nvmem driver updates
      
         - phy driver updates
      
         - soundwire driver updates
      
         - smaller misc and char driver fixes and updates.
      
         - bluetooth driver bugfix that maintainer wanted to go through this
           tree.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'char-misc-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (330 commits)
        bluetooth: eliminate the potential race condition when removing the HCI controller
        coresight: etm-perf: Fix define build issue when built as module
        phy: Revert "phy: ti: j721e-wiz: add missing of_node_put"
        phy: ti: j721e-wiz: Add missing include linux/slab.h
        phy: phy-twl4030-usb: Fix possible use-after-free in twl4030_usb_remove()
        stm class: Use correct UUID APIs
        intel_th: pci: Add Alder Lake-M support
        intel_th: pci: Add Rocket Lake CPU support
        intel_th: Consistency and off-by-one fix
        intel_th: Constify attribute_group structs
        intel_th: Constify all drvdata references
        stm class: Remove an unused function
        habanalabs/gaudi: Fix uninitialized return code rc when read size is zero
        greybus: es2: fix kernel-doc warnings
        mei: me: add Alder Lake P device id.
        dw-xdata-pcie: Update outdated info and improve text format
        dw-xdata-pcie: Fix documentation build warns
        fbdev: zero-fill colormap in fbcmap.c
        firmware: qcom-scm: Fix QCOM_SCM configuration
        speakup: i18n: Switch to kmemdup_nul() in spk_msg_set()
        ...
      8e3a3249