1. 11 Jan, 2022 40 commits
    • Linus Torvalds's avatar
      Merge tag 'for-5.17/parisc-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · c1eb8f6c
      Linus Torvalds authored
      Pull parisc architecture updates from Helge Deller:
      
       - Fix lpa and lpa_user defines (John David Anglin)
      
       - Fix symbol lookup of init functions with an __is_kernel() fix (Helge
         Deller)
      
       - Fix wrong pdc_toc_pim_11 and pdc_toc_pim_20 definitions (Helge
         Deller)
      
       - Add lws_atomic_xchg and lws_atomic_store syscalls (John David Anglin)
      
       - Rewrite light-weight syscall and futex code (John David Anglin)
      
       - Enable TOC (transfer of contents) feature unconditionally (Helge
         Deller)
      
       - Improve fault handler messages (John David Anglin)
      
       - Improve build process (Masahiro Yamada)
      
       - Reduce kernel code footprint of user access functions (Helge Deller)
      
       - Fix build error due to outX() macros (Bart Van Assche)
      
       - Ue default_groups in kobj_type in pdc_stable (Greg Kroah-Hartman)
      
       - Default to 16 CPUs on 32-bit kernel (Helge Deller)
      
      * tag 'for-5.17/parisc-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Default to 16 CPUs on 32-bit kernel
        sections: Fix __is_kernel() to include init ranges
        parisc: Re-use toc_stack as hpmc_stack
        parisc: Enable TOC (transfer of contents) feature unconditionally
        parisc: io: Improve the outb(), outw() and outl() macros
        parisc: pdc_stable: use default_groups in kobj_type
        parisc: Add kgdb io_module to read chars via PDC
        parisc: Fix pdc_toc_pim_11 and pdc_toc_pim_20 definitions
        parisc: Add lws_atomic_xchg and lws_atomic_store syscalls
        parisc: Rewrite light-weight syscall and futex code
        parisc: Enhance page fault termination message
        parisc: Don't call faulthandler_disabled() in do_page_fault()
        parisc: Switch user access functions to signal errors in r29 instead of r8
        parisc: Avoid calling faulthandler_disabled() twice
        parisc: Fix lpa and lpa_user defines
        parisc: Define depi_safe macro
        parisc: decompressor: do not copy source files while building
      c1eb8f6c
    • Linus Torvalds's avatar
      Merge tag 'x86_build_for_v5.17_rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f18e2d87
      Linus Torvalds authored
      Pull missed x86 build updates from Borislav Petkov:
       "In the heat of the battle between me and the tip pull requests, I've
        sent you the tip:x86/build branch without the two top-most commits
        from Ingo (it appears I hadn't fast-forwarded my local branch, sorry
        about that).
      
        Therefore, here's a part 2 of x86/build for 5.17.
      
         - Make x86 defconfigs more useful by enabling
           CONFIG_LOCALVERSION_AUTO and CONFIG_KALLSYMS_ALL
      
        And while you merge that, I'll be at the blackboard, writing:
      
          I will always fast-forward local branches before tagging and sending pull requests to Linus.
          I will always fast-forward local branches before tagging and sending pull requests to Linus.
          I will always fast-forward local branches before tagging and sending pull requests..."
      
      * tag 'x86_build_for_v5.17_rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kbuild: Enable CONFIG_KALLSYMS_ALL=y in the defconfigs
        x86/defconfig: Enable CONFIG_LOCALVERSION_AUTO=y in the defconfig
      f18e2d87
    • Linus Torvalds's avatar
      Merge tag 'efi-next-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi · f12fc75e
      Linus Torvalds authored
      Pull EFI updates from Ard Biesheuvel:
      
       - support taking the measurement of the initrd when loaded via the
         LoadFile2 protocol
      
       - kobject API cleanup from Greg
      
       - some header file whitespace fixes
      
      * tag 'efi-next-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
        efi: use default_groups in kobj_type
        efi/libstub: measure loaded initrd info into the TPM
        efi/libstub: consolidate initrd handling across architectures
        efi/libstub: x86/mixed: increase supported argument count
        efi/libstub: add prototype of efi_tcg2_protocol::hash_log_extend_event()
        include/linux/efi.h: Remove unneeded whitespaces before tabs
      f12fc75e
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · f6921211
      Linus Torvalds authored
      Pull UML updates from Richard Weinberger:
      
       - set_fs removal
      
       - Devicetree support
      
       - Many cleanups from Al
      
       - Various virtio and build related fixes
      
      * tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml: (31 commits)
        um: virtio_uml: Allow probing from devicetree
        um: Add devicetree support
        um: Extract load file helper from initrd.c
        um: remove set_fs
        hostfs: Fix writeback of dirty pages
        um: Use swap() to make code cleaner
        um: header debriding - sigio.h
        um: header debriding - os.h
        um: header debriding - net_*.h
        um: header debriding - mem_user.h
        um: header debriding - activate_ipi()
        um: common-offsets.h debriding...
        um, x86: bury crypto_tfm_ctx_offset
        um: unexport handle_page_fault()
        um: remove a dangling extern of syscall_trace()
        um: kill unused cpu()
        uml/i386: missing include in barrier.h
        um: stop polluting the namespace with registers.h contents
        logic_io instance of iounmap() needs volatile on argument
        um: move amd64 variant of mmap(2) to arch/x86/um/syscalls_64.c
        ...
      f6921211
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs · 5672cdfb
      Linus Torvalds authored
      Pull JFFS2, UBI and UBIFS updates from Richard Weinberger:
       "JFFS2:
         - Fix for a deadlock in jffs2_write_begin()
      
        UBI:
         - Fixes in comments
      
        UBIFS:
         - Expose error counters in sysfs
         - Many bugfixes found by Hulk Robot and others"
      
      * tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs:
        jffs2: GC deadlock reading a page that is used in jffs2_write_begin()
        ubifs: read-only if LEB may always be taken in ubifs_garbage_collect
        ubifs: fix double return leb in ubifs_garbage_collect
        ubifs: fix slab-out-of-bounds in ubifs_change_lp
        ubifs: fix snprintf() length check
        ubifs: Document sysfs nodes
        ubifs: Export filesystem error counters
        ubifs: Error path in ubifs_remount_rw() seems to wrongly free write buffers
        ubifs: Make use of the helper macro kthread_run()
        ubi: Fix a mistake in comment
        ubifs: Fix spelling mistakes
      5672cdfb
    • Linus Torvalds's avatar
      Merge tag 'dlm-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · 3f67eaed
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
       "This set includes the normal collection of minor fixes and cleanups,
        new kmem caches for network messaging structs, a start on some basic
        tracepoints, and some new debugfs files for inserting test messages"
      
      * tag 'dlm-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm: (32 commits)
        fs: dlm: print cluster addr if non-cluster node connects
        fs: dlm: memory cache for lowcomms hotpath
        fs: dlm: memory cache for writequeue_entry
        fs: dlm: memory cache for midcomms hotpath
        fs: dlm: remove wq_alloc mutex
        fs: dlm: use event based wait for pending remove
        fs: dlm: check for pending users filling buffers
        fs: dlm: use list_empty() to check last iteration
        fs: dlm: fix build with CONFIG_IPV6 disabled
        fs: dlm: replace use of socket sk_callback_lock with sock_lock
        fs: dlm: don't call kernel_getpeername() in error_report()
        fs: dlm: fix potential buffer overflow
        fs: dlm:Remove unneeded semicolon
        fs: dlm: remove double list_first_entry call
        fs: dlm: filter user dlm messages for kernel locks
        fs: dlm: add lkb waiters debugfs functionality
        fs: dlm: add lkb debugfs functionality
        fs: dlm: allow create lkb with specific id range
        fs: dlm: add debugfs rawmsg send functionality
        fs: dlm: let handle callback data as void
        ...
      3f67eaed
    • Linus Torvalds's avatar
      Merge tag 'gfs2-v5.16-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 8481c323
      Linus Torvalds authored
      Pull gfs2 updates from Andreas Gruenbacher:
       "Various minor gfs2 cleanups and fixes"
      
      * tag 'gfs2-v5.16-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: dump inode object for iopen glocks
        gfs2: Fix gfs2_instantiate description
        gfs2: Remove redundant check for GLF_INSTANTIATE_NEEDED
        gfs2: remove redundant set of INSTANTIATE_NEEDED
        gfs2: Fix __gfs2_holder_init function name in kernel-doc comment
      8481c323
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 1dbfae01
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "Convert ext4 to use the new mount API, and add support for the
        FS_IOC_GETFSLABEL and FS_IOC_SETFSLABEL ioctls.
      
        In addition the usual large number of clean ups and bug fixes, in
        particular for the fast_commit feature"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (48 commits)
        ext4: don't use the orphan list when migrating an inode
        ext4: use BUG_ON instead of if condition followed by BUG
        ext4: fix a copy and paste typo
        ext4: set csum seed in tmp inode while migrating to extents
        ext4: remove unnecessary 'offset' assignment
        ext4: remove redundant o_start statement
        ext4: drop an always true check
        ext4: remove unused assignments
        ext4: remove redundant statement
        ext4: remove useless resetting io_end_size in mpage_process_page()
        ext4: allow to change s_last_trim_minblks via sysfs
        ext4: change s_last_trim_minblks type to unsigned long
        ext4: implement support for get/set fs label
        ext4: only set EXT4_MOUNT_QUOTA when journalled quota file is specified
        ext4: don't use kfree() on rcu protected pointer sbi->s_qf_names
        ext4: avoid trim error on fs with small groups
        ext4: fix an use-after-free issue about data=journal writeback mode
        ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits'
        ext4: initialize err_blk before calling __ext4_get_inode_loc
        ext4: fix a possible ABBA deadlock due to busy PA
        ...
      1dbfae01
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.17-merge-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 11fc88c2
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "The big new feature here is that the mount code now only bothers to
        try to free stale COW staging extents if the fs unmounted uncleanly.
        This should reduce mount times, particularly on filesystems supporting
        reflink and containing a large number of allocation groups.
      
        Everything else this cycle are bugfixes, as the iomap folios
        conversion should be plenty enough excitement for anyone. That and I
        ran out of brain bandwidth after Thanksgiving last year.
      
        Summary:
      
         - Fix log recovery with da btree buffers when metauuid is in use.
      
         - Fix type coercion problems in xattr buffer size validation.
      
         - Fix a bug in online scrub dir leaf bestcount checking.
      
         - Only run COW recovery when recovering the log.
      
         - Fix symlink target buffer UAF problems and symlink locking problems
           by not exposing xfs innards to the VFS.
      
         - Fix incorrect quotaoff lock usage.
      
         - Don't let transactions cancel cleanly if they have deferred work
           items attached.
      
         - Fix a UAF when we're deciding if we need to relog an intent item.
      
         - Reduce kvmalloc overhead for log shadow buffers.
      
         - Clean up sysfs attr group usage.
      
         - Fix a bug where scrub's bmap/rmap checking could race with a quota
           file block allocation due to insufficient locking.
      
         - Teach scrub to complain about invalid project ids"
      
      * tag 'xfs-5.17-merge-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: warn about inodes with project id of -1
        xfs: hold quota inode ILOCK_EXCL until the end of dqalloc
        xfs: Remove redundant assignment of mp
        xfs: reduce kvmalloc overhead for CIL shadow buffers
        xfs: sysfs: use default_groups in kobj_type
        xfs: prevent UAF in xfs_log_item_in_current_chkpt
        xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list()
        xfs: Fix comments mentioning xfs_ialloc
        xfs: check sb_meta_uuid for dabuf buffer recovery
        xfs: fix a bug in the online fsck directory leaf1 bestcount check
        xfs: only run COW extent recovery when there are no live extents
        xfs: don't expose internal symlink metadata buffers to the vfs
        xfs: fix quotaoff mutex usage now that we don't support disabling it
        xfs: shut down filesystem if we xfs_trans_cancel with deferred work items
      11fc88c2
    • Linus Torvalds's avatar
      Merge tag 'for-5.17-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · d601e58c
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "This end of the year branch is intentionally not that exciting. Most
        of the changes are under the hood, but there are some minor user
        visible improvements and several performance improvements too.
      
        Features:
      
         - make send work with concurrent block group relocation.
      
           We're not allowed to prevent send failing or silently producing
           some bad stream but with more fine grained locking and checks it's
           possible. The send vs deduplication exclusion could reuse the same
           logic in the future.
      
         - new exclusive operation 'balance paused' to allow adding a device
           to filesystem with paused balance
      
         - new sysfs file for fsid stored in the per-device directory to help
           distinguish devices when seeding is enabled, the fsid may differ
           from the one reported by the filesystem
      
        Performance improvements:
      
         - less metadata needed for directory logging, directory deletion is
           20-40% faster
      
         - in zoned mode, cache zone information during mount to speed up
           repeated queries (about 50% speedup)
      
         - free space tree entries get indexed and searched by size (latency
           -30%, search run time -30%)
      
         - less contention in tree node locking when inserting a key and no
           splits are needed (files/sec in fsmark improves by 1-20%)
      
        Fixes:
      
         - fix ENOSPC failure when attempting direct IO write into NOCOW range
      
         - fix deadlock between quota enable and other quota operations
      
         - global reserve minimum calculations fixed to account for free space
           tree
      
         - in zoned mode, fix condition for chunk allocation that may not find
           the right zone for reuse and could lead to early ENOSPC
      
        Core:
      
         - global reserve stealing got simplified and cleaned up in evict
      
         - remove async transaction commit based on manual transaction refs,
           reuse existing kthread and mechanisms to let it commit transaction
           before timeout
      
         - preparatory work for extent tree v2, add wrappers for global tree
           roots, truncation path cleanups
      
         - remove readahead framework, it's a bit overengineered and used only
           for scrub, and yet it does not cover all its needs, there is
           another readahead built in the b-tree search that is now used,
           performance drop on HDD is about 5% which is acceptable and scrub
           is often throttled anyway, on SSDs there's no reported drop but
           slight improvement
      
         - self tests report extent tree state when error occurs
      
         - replace assert with debugging information when an uncommitted
           transaction is found at unmount time
      
        Other:
      
         - error handling improvements
      
         - other cleanups and refactoring"
      
      * tag 'for-5.17-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (115 commits)
        btrfs: output more debug messages for uncommitted transaction
        btrfs: respect the max size in the header when activating swap file
        btrfs: fix argument list that the kdoc format and script verified
        btrfs: remove unnecessary parameter type from compression_decompress_bio
        btrfs: selftests: dump extent io tree if extent-io-tree test failed
        btrfs: scrub: cleanup the argument list of scrub_stripe()
        btrfs: scrub: cleanup the argument list of scrub_chunk()
        btrfs: remove reada infrastructure
        btrfs: scrub: use btrfs_path::reada for extent tree readahead
        btrfs: scrub: remove the unnecessary path parameter for scrub_raid56_parity()
        btrfs: refactor unlock_up
        btrfs: skip transaction commit after failure to create subvolume
        btrfs: zoned: fix chunk allocation condition for zoned allocator
        btrfs: add extent allocator hook to decide to allocate chunk or not
        btrfs: zoned: unset dedicated block group on allocation failure
        btrfs: zoned: drop redundant check for REQ_OP_ZONE_APPEND and btrfs_is_zoned
        btrfs: zoned: sink zone check into btrfs_repair_one_zone
        btrfs: zoned: simplify btrfs_check_meta_write_pointer
        btrfs: zoned: encapsulate inode locking for zoned relocation
        btrfs: sysfs: add devinfo/fsid to retrieve actual fsid from the device
        ...
      d601e58c
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · 9149fe8b
      Linus Torvalds authored
      Pull erofs updates from Gao Xiang:
       "In this cycle, tail-packing data inline for compressed files is now
        supported so that tail pcluster can be stored and read together with
        inode metadata in order to save data I/O and storage space.
      
        In addition to that, to prepare for the upcoming subpage, folio and
        fscache features, we also introduce meta buffers to get rid of
        erofs_get_meta_page() since it was too close to the page itself.
      
        In addition, in order to show supported kernel features and control
        sync decompression strategy, new sysfs nodes are introduced in this
        cycle as well.
      
        Summary:
      
         - add sysfs interface and a sysfs node to control sync decompression
      
         - add tail-packing inline support for compressed files
      
         - get rid of erofs_get_meta_page()"
      
      * tag 'erofs-for-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: use meta buffers for zmap operations
        erofs: use meta buffers for xattr operations
        erofs: use meta buffers for super operations
        erofs: use meta buffers for inode operations
        erofs: introduce meta buffer operations
        erofs: add on-disk compressed tail-packing inline support
        erofs: support inline data decompression
        erofs: support unaligned data decompression
        erofs: introduce z_erofs_fixup_insize
        erofs: tidy up z_erofs_lz4_decompress
        erofs: clean up erofs_map_blocks tracepoints
        erofs: Replace zero-length array with flexible-array member
        erofs: add sysfs node to control sync decompression strategy
        erofs: add sysfs interface
        erofs: rename lz4_0pading to zero_padding
      9149fe8b
    • Paul E. McKenney's avatar
      drivers/pcmcia: Fix ifdef covering yenta_pm_ops · 579f3a6d
      Paul E. McKenney authored
      Currently, yenta_dev_suspend_noirq(), yenta_dev_resume_noirq(), and
      yenta_pm_ops are covered by "#ifdef CONFIG_PM", which results in
      compiler warnings in kernels built with CONFIG_PM_SLEEP=n and
      CONFIG_PM=y:
      
        drivers/pcmcia/yenta_socket.c:1322:12: warning: ‘yenta_dev_resume_noirq’ defined but not used [-Wunused-function]
         1322 | static int yenta_dev_resume_noirq(struct device *dev)
              |            ^~~~~~~~~~~~~~~~~~~~~~
        drivers/pcmcia/yenta_socket.c:1303:12: warning: ‘yenta_dev_suspend_noirq’ defined but not used [-Wunused-function]
         1303 | static int yenta_dev_suspend_noirq(struct device *dev)
              |            ^~~~~~~~~~~~~~~~~~~~~~~
      
      This affects kernels built without suspend and hibernation.
      
      Avoid these warnings by using "#ifdef CONFIG_PM_SLEEP".
      
      Fixes: 3daaf2c7 ("pcmcia: Make use of the helper macro SET_NOIRQ_SYSTEM_SLEEP_PM_OPS()")
      Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
      Cc: Masahiro Yamada <masahiroy@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      579f3a6d
    • Linus Torvalds's avatar
      Merge tag 'fs.idmapped.v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux · 5dfbfe71
      Linus Torvalds authored
      Pull fs idmapping updates from Christian Brauner:
       "This contains the work to enable the idmapping infrastructure to
        support idmapped mounts of filesystems mounted with an idmapping.
      
        In addition this contains various cleanups that avoid repeated
        open-coding of the same functionality and simplify the code in quite a
        few places.
      
        We also finish the renaming of the mapping helpers we started a few
        kernel releases back and move them to a dedicated header to not
        continue polluting the fs header needlessly with low-level idmapping
        helpers. With this series the fs header only contains idmapping
        helpers that interact with fs objects.
      
        Currently we only support idmapped mounts for filesystems mounted
        without an idmapping themselves. This was a conscious decision
        mentioned in multiple places (cf. [1]).
      
        As explained at length in [3] it is perfectly fine to extend support
        for idmapped mounts to filesystem's mounted with an idmapping should
        the need arise. The need has been there for some time now (cf. [2]).
      
        Before we can port any filesystem that is mountable with an idmapping
        to support idmapped mounts in the coming cycles, we need to first
        extend the mapping helpers to account for the filesystem's idmapping.
        This again, is explained at length in our documentation at [3] and
        also in the individual commit messages so here's an overview.
      
        Currently, the low-level mapping helpers implement the remapping
        algorithms described in [3] in a simplified manner as we could rely on
        the fact that all filesystems supporting idmapped mounts are mounted
        without an idmapping.
      
        In contrast, filesystems mounted with an idmapping are very likely to
        not use an identity mapping and will instead use a non-identity
        mapping. So the translation step from or into the filesystem's
        idmapping in the remapping algorithm cannot be skipped for such
        filesystems.
      
        Non-idmapped filesystems and filesystems not supporting idmapped
        mounts are unaffected by this change as the remapping algorithms can
        take the same shortcut as before. If the low-level helpers detect that
        they are dealing with an idmapped mount but the underlying filesystem
        is mounted without an idmapping we can rely on the previous shortcut
        and can continue to skip the translation step from or into the
        filesystem's idmapping. And of course, if the low-level helpers detect
        that they are not dealing with an idmapped mount they can simply
        return the relevant id unchanged; no remapping needs to be performed
        at all.
      
        These checks guarantee that only the minimal amount of work is
        performed. As before, if idmapped mounts aren't used the low-level
        helpers are idempotent and no work is performed at all"
      
      Link: 2ca4dcc4 ("fs/mount_setattr: tighten permission checks") [1]
      Link: https://github.com/containers/podman/issues/10374 [2]
      Link: Documentations/filesystems/idmappings.rst [3]
      Link: a65e58e7 ("fs: document and rename fsid helpers") [4]
      
      * tag 'fs.idmapped.v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
        fs: support mapped mounts of mapped filesystems
        fs: add i_user_ns() helper
        fs: port higher-level mapping helpers
        fs: remove unused low-level mapping helpers
        fs: use low-level mapping helpers
        docs: update mapping documentation
        fs: account for filesystem mappings
        fs: tweak fsuidgid_has_mapping()
        fs: move mapping helpers
        fs: add is_idmapped_mnt() helper
      5dfbfe71
    • Linus Torvalds's avatar
      Merge tag 'integrity-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · 84bfcc0b
      Linus Torvalds authored
      Pull integrity subsystem updates from Mimi Zohar:
       "The few changes are all kexec related:
      
         - The MOK keys are loaded onto the .platform keyring in order to
           verify the kexec kernel image signature.
      
           However, the MOK keys should only be trusted when secure boot is
           enabled. Before loading the MOK keys onto the .platform keyring,
           make sure the system is booted in secure boot mode.
      
         - When carrying the IMA measurement list across kexec, limit dumping
           the measurement list to when dynamic debug or CONFIG_DEBUG is
           enabled.
      
         - kselftest: add kexec_file_load selftest support for PowerNV and
           other cleanup"
      
      * tag 'integrity-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        selftests/kexec: Enable secureboot tests for PowerPC
        ima: silence measurement list hexdump during kexec
        selftests/kexec: update searching for the Kconfig
        selftest/kexec: fix "ignored null byte in input" warning
        integrity: Do not load MOK and MOKx when secure boot be disabled
        ima: Fix undefined arch_ima_get_secureboot() and co
      84bfcc0b
    • Linus Torvalds's avatar
      Merge tag 'audit-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit · 5d7e5223
      Linus Torvalds authored
      Pull audit updates from Paul Moore:
       "Four audit patches for v5.17:
      
         - Harden the code through additional use of the struct_size() macro
           and zero-length arrays to flexible-array conversions.
      
         - Ensure that processes which generate userspace audit records are
           not exempt from the kernel's audit throttling when the audit queues
           are being overrun"
      
      * tag 'audit-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
        audit: replace zero-length array with flexible-array member
        audit: use struct_size() helper in audit_[send|make]_reply()
        audit: ensure userspace is penalized the same as the kernel when under pressure
        audit: use struct_size() helper in kmalloc()
      5d7e5223
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · a135ce44
      Linus Torvalds authored
      Pull selinux updates from Paul Moore:
       "Nothing too significant, but five SELinux patches for v5.17 that do
        the following:
      
         - Harden the code through additional use of the struct_size() macro
      
         - Plug some memory leaks
      
         - Clean up the code via removal of the security_add_mnt_opt() LSM
           hook and minor tweaks to selinux_add_opt()
      
         - Rename security_task_getsecid_subj() to better reflect its actual
           behavior/use - now called security_current_getsecid_subj()"
      
      * tag 'selinux-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: minor tweaks to selinux_add_opt()
        selinux: fix potential memleak in selinux_add_opt()
        security,selinux: remove security_add_mnt_opt()
        selinux: Use struct_size() helper in kmalloc()
        lsm: security_task_getsecid_subj() -> security_current_getsecid_subj()
      a135ce44
    • Linus Torvalds's avatar
      Merge tag 'tpmdd-next-v5.17-fixed' of... · dabd40ec
      Linus Torvalds authored
      Merge tag 'tpmdd-next-v5.17-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd
      
      Pull TPM updates from Jarkko Sakkinen:
       "Other than bug fixes for TPM, this includes a patch for asymmetric
        keys to allow to look up and verify with self-signed certificates
        (keys without so called AKID - Authority Key Identifier) using a new
        "dn:" prefix in the query"
      
      * tag 'tpmdd-next-v5.17-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:
        lib: remove redundant assignment to variable ret
        tpm: fix NPE on probe for missing device
        tpm: fix potential NULL pointer access in tpm_del_char_device
        tpm: Add Upgrade/Reduced mode support for TPM2 modules
        char: tpm: cr50: Set TPM_FIRMWARE_POWER_MANAGED based on device property
        keys: X.509 public key issuer lookup without AKID
        tpm_tis: Fix an error handling path in 'tpm_tis_core_init()'
        tpm: tpm_tis_spi_cr50: Add default RNG quality
        tpm/st33zp24: drop unneeded over-commenting
        tpm: add request_locality before write TPM_INT_ENABLE
      dabd40ec
    • Linus Torvalds's avatar
      Merge branch 'pcmcia-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux · 4aa1b825
      Linus Torvalds authored
      Pull pcmcia updates from Dominik Brodowski:
       "A number of odd cleanups and fixes, including one for a small race in
        the handling of the pccardd kernel thread"
      
      * 'pcmcia-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux:
        pcmcia: fix setting of kthread task states
        MAINTAINERS: update PCMCIA tree
        pcmcia: use sysfs_emit{,_at} for sysfs output
        pcmcia: make pcmcia_release_io() void, as no-one is interested in return value
        pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in nonstatic_find_mem_region()
        pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in __nonstatic_find_io_region()
        pcmcia: comment out unused exca_readw() function
        pcmcia: Make use of the helper macro SET_NOIRQ_SYSTEM_SLEEP_PM_OPS()
        pcmcia: clean up dead drivers for CompuLab CM-X255/CM-X270 boards
      4aa1b825
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · c288ea67
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski:
       "The gpio-sim module is back, this time without any changes to
        configfs. This results in a less elegant user-space interface but I
        never got any follow-up on the committable items and didn't want to
        delay this module for several more months.
      
        Other than that we have support for several new models and some
        support going away. We started working on converting GPIO drivers to
        using fwnode exclusively in order to limit references to OF symbols to
        gpiolib-of.c exclusively. We also have regular tweaks and improvements
        all over the place.
      
        Summary:
      
         - new testing module: gpio-sim that is scheduled to replace
           gpio-mockup
      
         - initial changes aiming at converting all GPIO drivers to using the
           fwnode interface and limiting any references to OF symbols to
           gpiolib-of.c
      
         - add support for Tegra234 and Tegra241 to gpio-tegra186
      
         - add support for new models (SSD201 and SSD202D) to gpio-msc313
      
         - add basic support for interrupts to gpio-aggregator
      
         - add support for AMDIF031 HID device to gpio-amdpt
      
         - drop support for unused platforms in gpio-xlp
      
         - cleanup leftovers from the removal of the legacy Samsung Exynos
           GPIO driver
      
         - use raw spinlocks in gpio-aspeed and gpio-aspeed-sgpio to make
           PREEMPT_RT happy
      
         - generalize the common 'ngpios' device property by reading it in the
           core gpiolib code so that we can remove duplicate reads from
           drivers
      
         - allow line names from device properties to override names set by
           drivers
      
         - code shrink in gpiod_add_lookup_table()
      
         - add new model to the DT bindings for gpio-vf610
      
         - convert DT bindings for tegra devices to YAML
      
         - improvements to interrupt handling in gpio-rcar and gpio-rockchip
      
         - updates to intel drivers from Andy (details in the merge commit)
      
         - some minor tweaks, improvements and coding-style fixes all around
           the subsystem"
      
      * tag 'gpio-updates-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (59 commits)
        gpio: rcar: Propagate errors from devm_request_irq()
        gpio: rcar: Use platform_get_irq() to get the interrupt
        gpio: ts5500: Use platform_get_irq() to get the interrupt
        gpio: dwapb: Switch to use fwnode instead of of_node
        gpiolib: acpi: make fwnode take precedence in struct gpio_chip
        dt-bindings: gpio: samsung: drop unused bindings
        gpio: max3191x: Use bitmap_free() to free bitmap
        gpio: regmap: Switch to use fwnode instead of of_node
        gpio: tegra186: Add support for Tegra241
        dt-bindings: gpio: Add Tegra241 support
        gpio: brcmstb: Use local variable to access OF node
        gpio: Remove unused local OF node pointers
        gpio: sim: add missing fwnode_handle_put() in gpio_sim_probe()
        gpio: msc313: Add support for SSD201 and SSD202D
        gpio: msc313: Code clean ups
        dt-bindings: gpio: msc313: Add offsets for ssd20xd
        dt-bindings: gpio: msc313: Add compatible for ssd20xd
        gpio: sim: fix uninitialized ret variable
        gpio: Propagate firmware node from a parent device
        gpio: Setup parent device and get rid of unnecessary of_node assignment
        ...
      c288ea67
    • Linus Torvalds's avatar
      Merge tag 'mmc-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 1151e3cd
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Use common polling loop for CMD1
         - Add support for DT compatibles for card quirks and use it for ti,wl1251
         - Fixup storing of the OCR mask for MMC_QUIRK_NONSTD_SDIO
      
        MMC host:
         - dw_mmc: Add support for MMC_GEN_CMDs
         - dw_mmc: Fixup calculation of the data timeout
         - dw_mmc-exynos: Add support for the ARTPEC-8 variant
         - jz4740: Add support for bi-directional DMA channels
         - mmci: Add support for eMMC HS200 mode for the stm32 sdmmc variant
         - mmci: Add support for stm32 sdmmc variant revision v2.2
         - mtk-sd: A couple of various minor improvements
         - omap_hsmmc: Drop redundant initialization for the ti,wl1251 chip
         - sdhci-esdhc-imx: Add support for the i.MXRT series variant
         - sdhci-esdhc-imx: Add Haibo Chen as maintainer
         - sdhci-pci: Add support for the Intel ADL variant
         - sdhci-pci-gli: GL975[50]: Add support for the Apple ARM64 variant
         - sdhci-pci-o2micro: Improve support for SDR104/HS200"
      
      * tag 'mmc-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (54 commits)
        dt-bindings: mmc: synopsys-dw-mshc: integrate Altera and Imagination
        mmc: pwrseq: Use bitmap_free() to free bitmap
        dt-bindings: mmc: PL18x stop relying on order of dma-names
        dt-bindings: mmc: sdhci-msm: Add compatible string for msm8994
        mmc: au1xmmc: propagate errors from platform_get_irq()
        mmc: sdhci-pci-o2micro: Restore the SD clock's base clock frequency
        mmc: sdhci-pci-o2micro: Improve card input timing at SDR104/HS200 mode
        mmc: mtk-sd: Assign src_clk parent to src_clk_cg for legacy DTs
        mmc: mtk-sd: Fix usage of devm_clk_get_optional()
        mmc: mtk-sd: Take action for no-sdio device-tree parameter
        mmc: mtk-sd: Use BIT() and GENMASK() macros to describe fields
        mmc: mtk-sd: Use readl_poll_timeout instead of open-coded polling
        MAINTAINERS: Add i.MX sdhci maintainer
        mmc: jz4740: Support using a bi-directional DMA channel
        dt-bindings: mmc: ingenic: Support using bi-directional DMA channel
        mmc: dw_mmc: Do not wait for DTO in case of error
        mmc: dw_mmc: Add driver callbacks for data read timeout
        mmc: dw_mmc-exynos: Add support for ARTPEC-8
        dt-bindings: mmc: exynos-dw-mshc: Add support for ARTPEC-8
        mmc: meson-mx-sdio: add IRQ check
        ...
      1151e3cd
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 1cc8d14c
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Functionality:
         - Prepare and add support for ACPI enumeration; lp855x_bl
      
        Fix-ups:
         - Use Regmap API to conduct endianess conversions; qcom-wled
         - Remove superfluous code; qcom-wled
         - Fix formatting issues; qcom-wled
      
        Bug Fixes:
         - Provide error checking/validation of DT supplied strings; qcom-wled
         - Request dynamic amount of values when reading from DT; qcom-wled
         - Fix off-by-one issue when reading from DT; qcom-wled"
      
      * tag 'backlight-next-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: qcom-wled: Respect enabled-strings in set_brightness
        backlight: qcom-wled: Remove unnecessary double whitespace
        backlight: qcom-wled: Provide enabled_strings default for WLED 4 and 5
        backlight: qcom-wled: Remove unnecessary 4th default string in WLED3
        backlight: qcom-wled: Override default length with qcom,enabled-strings
        backlight: qcom-wled: Fix off-by-one maximum with default num_strings
        backlight: qcom-wled: Use cpu_to_le16 macro to perform conversion
        backlight: qcom-wled: Pass number of elements to read to read_u32_array
        backlight: qcom-wled: Validate enabled string indices in DT
        backlight: lp855x: Add support ACPI enumeration
        backlight: lp855x: Add dev helper variable to lp855x_probe()
        backlight: lp855x: Move device_config setting out of lp855x_configure()
      1cc8d14c
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · fa722ecb
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "New Device Support:
         - Add support for Lakefield PCH to Intel LPSS PCI
      
        Remove Device Support:
         - Remove support for ROHM BD70528 Power Management IC
      
        New Functionality:
         - Add support for SMBus and I2C mode to Dialog DA9062/61 PMIC
         - Enable I2C4 on Microsoft Surface Go & Go 2
      
        Fix-ups:
         - Device Tree changes (inc. YAML conversion); maxim,max77686,
           rohm,bd9571mwv, syscon, brcm,twd, google,cros-ec
         - Use __maybe_unused instead of #ifery; atmel-flexcom
         - Allow the Regmap API to handle endianess internally; ntxec
         - Utilise I2C's .resume_noirq call-back; atmel-flexcom
         - Remove unused code; ti_am335x_tscadc
         - Use CPU-id instead of ACPI _HRV to ID variants; intel_soc_pmic_core
         - Allow device to power-off right from .probe(); tps65910
         - Trivial (whitespace, typos, etc); da9063
      
        Bug Fixes:
         - Fix ordering issues during probe; intel-lpss-acpi
         - Fix correct clock speed; intel-lpss-pci"
      
      * tag 'mfd-next-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (25 commits)
        mfd: google,cros-ec: Fix property name for MediaTek rpmsg
        dt-bindings: mfd: Fix typo "DA9093" -> "DA9063"
        mfd: ntxec: Change return type of ntxec_reg8 from __be16 to u16
        mfd: tps65910: Set PWR_OFF bit during driver probe
        mfd: intel_soc_pmic: Use CPU-id check instead of _HRV check to differentiate variants
        mfd: intel-lpss: Fix I2C4 not being available on the Microsoft Surface Go & Go 2
        dt-bindings: mfd: Add Broadcom's Timer-Watchdog block
        dt-bindings: mfd: Add Freecom system controller
        mfd: Kconfig: Change INTEL_SOC_PMIC_CHTDC_TI to bool
        dt-bindings: mfd: syscon: Add samsung,exynos850-sysreg
        mfd: da9062: Support SMBus and I2C mode
        mfd: intel-lpss-pci: Fix clock speed for 38a8 UART
        mfd: intel-lpss: Fix too early PM enablement in the ACPI ->probe()
        mfd: ti_am335x_tscadc: Drop the CNTRLREG_TSC_8WIRE macro
        mfd: stmpe: Support disabling sub-functions
        mfd: atmel-flexcom: Use .resume_noirq
        mfd: atmel-flexcom: Remove #ifdef CONFIG_PM_SLEEP
        dt-bindings: mfd: bd9571mwv: Convert to json-schema
        mfd: intel-lpss: Add Intel Lakefield PCH PCI IDs
        dt-bindings: mfd: maxim,max77686: Convert to dtschema
        ...
      fa722ecb
    • Linus Torvalds's avatar
      Merge tag 'spi-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 282aa44c
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "This has mostly been a quiet release for the SPI subsystem, almost all
        cleanups and fixes to existing drivers.
      
        A couple of changes that stand out:
      
         - Cleanups and support for version specific features in the
           DesignWare controller.
      
         - Removal of support for Netlogic devices from the XLP driver, the
           platform had previously been removed by MIPS so the support
           couldn't be used.
      
         - Conversion of several DT bindings to YAML format"
      
      * tag 'spi-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (53 commits)
        spi: don't include ptp_clock_kernel.h in spi.h
        spi: spi-meson-spifc: Add missing pm_runtime_disable() in meson_spifc_probe
        spi: atmel: Fix typo
        spi: dt-bindings: mediatek,spi-mtk-nor: Fix example 'interrupts' property
        spi: qcom: geni: handle timeout for gpi mode
        spi: qcom: geni: set the error code for gpi transfer
        spi: spi-mux: Add reference to spi-peripheral-props.yaml schema
        spi: ar934x: fix transfer size
        spi: pxa2xx: Propagate firmware node
        spi: dw: Propagate firmware node
        spi: dln2: Propagate firmware node
        spi: ar934x: fix transfer and word delays
        spi: uniphier: Fix a bug that doesn't point to private data correctly
        spi: spi-mtk-nor: add new clock name 'axi' for spi nor
        spi: atmel,quadspi: Define sama7g5 QSPI
        spi: atmel,quadspi: Convert to json-schema
        spi: Fix incorrect cs_setup delay handling
        dt-bindings: mtd: spi-nor: Add a reference to spi-peripheral-props.yaml
        spi: dt-bindings: cdns,qspi-nor: Move peripheral-specific properties out
        spi: dt-bindings: add schema listing peripheral-specific properties
        ...
      282aa44c
    • Linus Torvalds's avatar
      Merge tag 'regulator-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · fef8dfae
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "This has been a fairly quiet release for the regulator API, the main
        thing has been the addition of helpers for interrupt handling from
        Matti Vaittinen.
      
        We do also have support for quite a few new devices.
      
        Summary:
      
         - Helpers for trivial interrupt notifications, making it easier for
           drivers to handle error interrupts.
      
         - Support for Dialog DA914x, Maxim MAX2008x, Qualcomm PM8826,
           PMG1100, and PM8450 and TI TPS68470"
      
      * tag 'regulator-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (30 commits)
        regulator: Add MAX20086-MAX20089 driver
        dt-bindings: regulators: Add bindings for Maxim MAX20086-MAX20089
        regulator: qcom_smd: Align probe function with rpmh-regulator
        regulator: remove redundant ret variable
        regulator: qcom-labibb: OCP interrupts are not a failure while disabled
        regulator: dt-bindings: samsung,s5m8767: Move fixed string BUCK9 to 'properties'
        regulator: Introduce tps68470-regulator driver
        drivers/regulator: remove redundant ret variable
        regulator: fix bullet lists of regulator_ops comment
        regulator: Fix type of regulator-coupled-max-spread property
        regulator: maxim,max8973: Document interrupts property
        regulator: qcom-rpmh: Add support for PM8450 regulators
        regulator: qcom,rpmh: Add compatible for PM8450
        regulator: da9121: Add DA914x binding info
        regulator: da9121: Remove erroneous compatible from binding
        regulator: da9121: Add DA914x support
        regulator: da9121: Prevent current limit change when enabled
        regulator: qcom-rpmh: Add PMG1110 regulators
        dt-bindings: regulator: Add compatible for pmg1110
        regulator: qcom_spmi: Add pm8226 regulators
        ...
      fef8dfae
    • Linus Torvalds's avatar
      Merge tag 'regmap-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 2d7852c3
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "A very quiet release for regmap:
      
         - Allow a custom _update_bits() operation for devices with no bus.
      
         - Fix an issue with creation of the debugfs directory when attaching
           a device to an existing no device regmap.
      
         - A trivial formatting fix"
      
      [ The custom _update_bits comit came in earlier through the networking
        tree that had merged it for its own needs ]
      
      * tag 'regmap-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: debugfs: Fix indentation
        regmap: Call regmap_debugfs_exit() prior to _init()
      2d7852c3
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · c01d85c2
      Linus Torvalds authored
      Pull MTD updates from Miquel Raynal:
       "MTD core changes:
      
         - mtdchar: Prevent unbounded allocation in MEMWRITE ioctl
      
         - gen_probe: Use bitmap_zalloc() when applicable
      
         - Introduce an expert mode for forensics and debugging purposes
      
         - Clear out unregistered devices a bit more
      
         - Provide unique name for nvmem device
      
         - Remove unused header file <linux/mtd/latch-addr-flash.h>
      
         - Fixed breaking list in __mtd_del_partition.
      
        MTD device changes:
      
         - Warn about failure to unregister mtd device in sst25l, mchp48l640,
           mchp23k256, and dataflash drivers.
      
        Raw NAND core changes:
      
         - Export nand_read_page_hwecc_oob_first()
      
        GPMC memory controller for OMAP2 NAND controller changes:
      
         - Add support for AM64 SoC and allow build on K3 platforms
      
         - Use a compatible match table when checking for NAND controller
      
         - Use platform_get_irq() to get the interrupt
      
        Raw NAND controller changes:
      
         - OMAP2 NAND controller:
            - Document the missing 'rb-gpios' DT property
            - Drop unused variable
            - Fix force_8bit flag behaviour for DMA mode
            - Move to exec_op interface
            - Use platform_get_irq() to get the interrupt
      
         - Renesas:
            - Add new NAND controller driver with its bindings and MAINTAINERS entry
      
         - Onenand:
            - Remove redundant variable ooblen
      
         - MPC5121:
            - Remove unused variable in ads5121_select_chip()
      
         - GPMI:
            - Add ERR007117 protection for nfc_apply_timings
            - Remove explicit default gpmi clock setting for i.MX6
            - Use platform_get_irq_byname() to get the interrupt
            - Remove unneeded variable
      
         - Ingenic:
            - JZ4740 needs 'oob_first' read page function
      
         - Davinci:
            - Rewrite function description
            - Avoid duplicated page read
            - Don't calculate ECC when reading page
      
        SPI NOR core changes:
      
         - Add Pratyush as SPI NOR co-maintainer.
      
         - Flash parameters initialization was done in a spaghetti way. Clean
           flash parameters initialization.
      
         - Rework the flash_info flags and clarify where one should be used.
      
         - Initialize all flash parameters based on JESD216 SFDP where
           possible. Flash parameters and settings that are SFDP discoverable
           should not be duplicated via flash_info flags at flash declaration.
      
         - Remove debugfs entries that duplicate sysfs entries.
      
        SPI NOR manufacturer driver changes:
      
         - Use late_init() hook in various drivers to make it clear that those
           flash parameters are either not declared in the JESD216 SFDP
           standard, or the SFDP tables which define those flash parameters
           are not defined by the flash.
      
         - Fix mtd size for s3an flashes.
      
         - Write 2 bytes when disabling Octal DTR mode: 1 byte long
           transactions are not allowed in 8D-8D-8D mode.
      
        Hyperbus changes:
      
         - Couple of fixes in Renesas hyperbus rpc-if driver to avoid crash on
           module remove and for missing check for error value in probe"
      
      * tag 'mtd/for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (71 commits)
        mtd: spi-nor: Remove debugfs entries that duplicate sysfs entries
        mtd: spi-nor: micron-st: write 2 bytes when disabling Octal DTR mode
        mtd: spi-nor: spansion: write 2 bytes when disabling Octal DTR mode
        mtd: spi-nor: core: use 2 data bytes for template ops
        mtd: spi-nor: Constify part specific fixup hooks
        mtd: spi-nor: core: Remove reference to spi-nor.c
        mtd: rawnand: gpmi: Use platform_get_irq_byname() to get the interrupt
        mtd: rawnand: omap_elm: Use platform_get_irq() to get the interrupt
        mtd: rawnand: omap2: Select GPMC device driver for ARCH_K3
        memory: omap-gpmc: Use a compatible match table when checking for NAND controller
        memory: omap-gpmc: Add support for GPMC on AM64 SoC
        dt-bindings: memory-controllers: ti,gpmc: Add compatible for AM64
        memory: omap-gpmc: Use platform_get_irq() to get the interrupt
        MAINTAINERS: Add an entry for Renesas NAND controller
        mtd: rawnand: renesas: Add new NAND controller driver
        dt-bindings: mtd: renesas: Describe Renesas R-Car Gen3 & RZ/N1 NAND controller
        mtd: rawnand: gpmi: remove unneeded variable
        mtd: rawnand: omap2: drop unused variable
        mtd: rawnand: omap2: fix force_8bit flag behaviour for DMA mode
        mtd: rawnand: omap2: Add compatible for AM64 SoC
        ...
      c01d85c2
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v5.17-1' of... · 34770887
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver updates from Hans de Goede:
       "Highlights:
      
        New drivers:
         - asus-tf103c-dock
         - intel_crystal_cove_charger
         - lenovo-yogabook-wmi
         - simatic-ipc platform-code + led driver + watchdog driver
         - x86-android-tablets (kernel module to workaround DSDT bugs on
           these)
      
        amd-pmc:
         - bug-fixes
         - smar trace buffer support
      
        asus-wmi:
         - support for custom fan curves
      
        int3472 (camera info ACPI object for Intel IPU3/SkyCam cameras):
         - ACPI core + int3472 changes to delay enumeration of camera sensor
           I2C clients until the PMIC for the sensor has been fully probed
         - Add support for board data (DSDT info is incomplete) for setting up
           the tps68470 PMIC used on some boards with these cameras
         - Add board data for the Microsoft Surface Go (original, v2 and v3)
      
        thinkpad_acpi:
         - various cleanups
         - support for forced battery discharging (for battery calibration)
         - support to inhibit battery charging
         - this includes power_supply core changes to add new APIs for this
      
        think_lmi:
         - enhanced BIOS password support
      
        various other small fixes and hardware-id additions"
      
      * tag 'platform-drivers-x86-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (78 commits)
        power: supply: Provide stubs for charge_behaviour helpers
        platform/x86: x86-android-tablets: Fix GPIO lookup leak on error-exit
        platform/x86: int3472: Add board data for Surface Go 3
        platform/x86: Add Asus TF103C dock driver
        platform/x86: x86-android-tablets: Add TM800A550L data
        platform/x86: x86-android-tablets: Add Asus MeMO Pad 7 ME176C data
        platform/x86: x86-android-tablets: Add Asus TF103C data
        platform/x86: x86-android-tablets: Add support for preloading modules
        platform/x86: x86-android-tablets: Add support for registering GPIO lookup tables
        platform/x86: x86-android-tablets: Add support for instantiating serdevs
        platform/x86: x86-android-tablets: Add support for instantiating platform-devs
        platform/x86: x86-android-tablets: Add support for PMIC interrupts
        platform/x86: x86-android-tablets: Don't return -EPROBE_DEFER from a non probe() function
        platform/x86: touchscreen_dmi: Remove the Glavey TM800A550L entry
        platform/x86: touchscreen_dmi: Enable pen support on the Chuwi Hi10 Plus and Pro
        platform/x86: touchscreen_dmi: Correct min/max values for Chuwi Hi10 Pro (CWI529) tablet
        platform/x86: Add intel_crystal_cove_charger driver
        power: supply: fix charge_behaviour attribute initialization
        platform/x86: intel-uncore-frequency: use default_groups in kobj_type
        x86/platform/uv: use default_groups in kobj_type
        ...
      34770887
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 46a67e76
      Linus Torvalds authored
      Pull HSI update from Sebastian Reichel:
      
       - avoid returning free'd object in hsi_new_client error path
      
      * tag 'hsi-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: core: Fix return freed object in hsi_new_client
      46a67e76
    • Linus Torvalds's avatar
      Merge tag 'for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 039053c1
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "Power-supply core:
      
         - introduce "No Battery" health status
      
         - use library interpolation
      
         - add power_supply_battery_info documentation
      
         - migrate power_supply_battery_info to be fully heap allocated making
           it more obvious that it needs to be free'd manually
      
        Drivers:
      
         - max77976-charger: new driver
      
         - qcom-smbb: add pm8226 charger support
      
         - bq25890-charger: support battery temperature readings
      
         - ab8500: continue migrating towards using standard core APIs"
      
      * tag 'for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (28 commits)
        power: supply_core: Pass pointer to battery info
        power: supply: ab8500: Fix the error handling path of ab8500_charger_probe()
        power: reset: mt6397: Check for null res pointer
        power: bq25890: add POWER_SUPPLY_PROP_TEMP
        power: supply: qcom_smbb: support pm8226
        dt-bindings: power: supply: pm8941-charger: add pm8226
        power: supply: ab8500: Standardize capacity lookup
        power: supply: ab8500: Standardize temp res lookup
        power: supply: ab8500: Standardize CV voltage
        power: supply: ab8500: Standardize CC current
        power: supply: ab8500: Make recharge capacity a constant
        power: supply: ab8500: Standardize termination current
        power: supply: ab8500: Standardize internal resistance
        power: supply: ab8500_fg: Init battery data in bind()
        power: supply: ab8500: Standardize voltages
        power: supply: ab8500: Standardize technology
        power: supply: ab8500: Standardize design capacity
        power: supply: ab8500: Use only one battery type
        power: supply: ab8500: Drop unused battery types
        power: supply: ab8500: Standardize operating temperature
        ...
      039053c1
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 7db48b6b
      Linus Torvalds authored
      Pull trivial tree removal from Jiri Kosina:
       "Remove any mentions of trivial tree from the documentation and
        MAINTAINERS.
      
        This has been discussed on ksummit-discuss@ some time ago (link is
        provided in the commit message, together with the reasoning). It's a
        general agreement that reason for such a tree to exist is currently
        pretty much non-existent"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
        Documentation: remove trivial tree
      7db48b6b
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 26b88fba
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
       "Highlights:
      
         - support for USI style pens (Tero Kristo, Mika Westerberg)
      
         - quirk for devices that need inverted X/Y axes (Alistair Francis)
      
         - small core code cleanups and deduplication (Benjamin Tissoires)
      
         - Apple Magic Keyboard support improvements (José Expósito, Alex
           Henrie, Benjamin Berg)
      
         - locking performance improvement for hidraw code (André Almeida)
      
         - PM wakeup support for i2c-hid driver (Matthias Kaehlcke
      
         - new driver to support for LetSketch device (Hans de Goede)
      
         - proper batter reporting for hid-magicmouse USB-connected devices
           (José Expósito)"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (32 commits)
        HID: magicmouse: Fix an error handling path in magicmouse_probe()
        HID: address kernel-doc warnings
        HID: intel-ish-hid: ishtp-fw-loader: Fix a kernel-doc formatting issue
        HID: intel-ish-hid: ipc: Specify no cache snooping on TGL and ADL
        HID: hid-uclogic-params: Invalid parameter check in uclogic_params_frame_init_v1_buttonpad
        HID: hid-uclogic-params: Invalid parameter check in uclogic_params_huion_init
        HID: hid-uclogic-params: Invalid parameter check in uclogic_params_get_str_desc
        HID: hid-uclogic-params: Invalid parameter check in uclogic_params_init
        HID: Add new Letsketch tablet driver
        HID: apple: Add Magic Keyboard 2021 with fingerprint reader FN key mapping
        HID: apple: Add 2021 magic keyboard FN key mapping
        HID: magicmouse: set Magic Trackpad 2021 name
        HID: magicmouse: set device name when it has been personalized
        HID: apple: Add 2021 Magic Keyboard with number pad
        HID: apple: Add 2021 Magic Keyboard with fingerprint reader
        HID: i2c-hid-of: Expose the touchscreen-inverted properties
        HID: quirks: Allow inverting the absolute X/Y values
        HID: hidraw: Replace hidraw device table mutex with a rwsem
        HID: thrustmaster use swap() to make code cleaner
        HID: debug: Add USI usages
        ...
      26b88fba
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 4a110907
      Linus Torvalds authored
      Pull hwmon updates from Guenter Roeck:
       "New drivers:
      
         - PMBus driver for MPS Multi-phase mp5023
      
         - PMBus driver for Delta AHE-50DC fan control module
      
         - Driver for NZXT RGB&Fan Controller/Smart Device v2
      
         - Driver for Texas Instruments INA238
      
         - Driver to support X370 Asus WMI
      
         - Driver to support B550 Asus WMI
      
        Other notable changes:
      
         - Cleanup of ntc_thermistor driver, and added support for Samsung
           1404-001221 NTC
      
         - Improve detection of LM84, MAX1617, and MAX1617A in adm1021 driver
      
         - Clean up tmp401 driver, and convert to with_info API
      
         - Add support for regulators and IR38060, IR38164 IR38263 to ir38064
           PMBus driver
      
         - Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh to
           k10temp driver
      
         - Add support for F81966 to f71882fg driver
      
         - Add support for ONSEMI N34TS04 to jc42 driver
      
         - Clean up and simplify dell-smm driver
      
         - Add support for ROG STRIX B550-A/X570-I GAMING to nct6775 driver
      
        And various other minor improvements and fixes"
      
      * tag 'hwmon-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (49 commits)
        hwmon: (nzxt-smart2) make array detect_fans_report static const
        hwmon: (xgene-hwmon) Add free before exiting xgene_hwmon_probe
        hwmon: (nzxt-smart2) Fix "unused function" warning
        hwmon: (dell-smm) Pack the whole smm_regs struct
        hwmon: (nct6775) Additional check for ChipID before ASUS WMI usage
        hwmon: (mr75203) fix wrong power-up delay value
        hwmon/pmbus: (ir38064) Fix spelling mistake "comaptible" -> "compatible"
        hwmon/pmbus: (ir38064) Expose a regulator
        hwmon/pmbus: (ir38064) Add of_match_table
        hwmon/pmbus: (ir38064) Add support for IR38060, IR38164 IR38263
        hwmon: add driver for NZXT RGB&Fan Controller/Smart Device v2.
        hwmon: (nct6775) add ROG STRIX B550-A/X570-I GAMING
        hwmon: (pmbus) Add support for MPS Multi-phase mp5023
        dt-bindings: add Delta AHE-50DC fan control module
        hwmon: (pmbus) Add Delta AHE-50DC fan control module driver
        hwmon: prefix kernel-doc comments for structs with struct
        hwmon: (ntc_thermistor) Add Samsung 1404-001221 NTC
        hwmon: (ntc_thermistor) Drop OF dependency
        hwmon: (dell-smm) Unify i8k_ioctl() and i8k_ioctl_unlocked()
        hwmon: (dell-smm) Simplify ioctl handler
        ...
      4a110907
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 5c947d0d
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "Algorithms:
      
         - Drop alignment requirement for data in aesni
      
         - Use synchronous seeding from the /dev/random in DRBG
      
         - Reseed nopr DRBGs every 5 minutes from /dev/random
      
         - Add KDF algorithms currently used by security/DH
      
         - Fix lack of entropy on some AMD CPUs with jitter RNG
      
        Drivers:
      
         - Add support for the D1 variant in sun8i-ce
      
         - Add SEV_INIT_EX support in ccp
      
         - PFVF support for GEN4 host driver in qat
      
         - Compression support for GEN4 devices in qat
      
         - Add cn10k random number generator support"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (145 commits)
        crypto: af_alg - rewrite NULL pointer check
        lib/mpi: Add the return value check of kcalloc()
        crypto: qat - fix definition of ring reset results
        crypto: hisilicon - cleanup warning in qm_get_qos_value()
        crypto: kdf - select SHA-256 required for self-test
        crypto: x86/aesni - don't require alignment of data
        crypto: ccp - remove unneeded semicolon
        crypto: stm32/crc32 - Fix kernel BUG triggered in probe()
        crypto: s390/sha512 - Use macros instead of direct IV numbers
        crypto: sparc/sha - remove duplicate hash init function
        crypto: powerpc/sha - remove duplicate hash init function
        crypto: mips/sha - remove duplicate hash init function
        crypto: sha256 - remove duplicate generic hash init function
        crypto: jitter - add oversampling of noise source
        MAINTAINERS: update SEC2 driver maintainers list
        crypto: ux500 - Use platform_get_irq() to get the interrupt
        crypto: hisilicon/qm - disable qm clock-gating
        crypto: omap-aes - Fix broken pm_runtime_and_get() usage
        MAINTAINERS: update caam crypto driver maintainers list
        crypto: octeontx2 - prevent underflow in get_cores_bmap()
        ...
      5c947d0d
    • Linus Torvalds's avatar
      Merge tag 'docs-5.17' of git://git.lwn.net/linux · 6f38be8f
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "This isn't a hugely busy cycle for documentation, but a few
        significant things still showed up:
      
         - A documentation section for ARC processors
      
         - Reworked and enhanced KUnit documentation
      
         - The ability to pick your own theme for HTML builds; if the default
           "Read the Docs" theme isn't ugly enough for you, you can now pick
           an uglier one.
      
         - More Chinese translation work
      
        Plus the usual assortment of fixes and cleanups"
      
      * tag 'docs-5.17' of git://git.lwn.net/linux: (53 commits)
        scripts: sphinx-pre-install: Fix ctex support on Debian
        docs: discourage use of list tables
        docs: 5.Posting.rst: describe Fixes: and Link: tags
        Documentation: kgdb: Replace deprecated remotebaud
        docs: automarkup.py: Fix invalid HTML link output and broken URI fragments
        Documentation: refer to config RANDOMIZE_BASE for kernel address-space randomization
        Documentation: kgdb: properly capitalize the MAGIC_SYSRQ config
        docs/zh_CN: Update and fix a couple of typos
        scripts: sphinx-pre-install: add required ctex dependency
        Documentation: KUnit: Restyled Frequently Asked Questions
        Documentation: KUnit: Restyle Test Style and Nomenclature page
        Documentation: KUnit: Rework writing page to focus on writing tests
        Documentation: kunit: Reorganize documentation related to running tests
        Documentation: KUnit: Added KUnit Architecture
        Documentation: KUnit: Rewrite getting started
        Documentation: KUnit: Rewrite main page
        docs/zh_CN: Add zh_CN/accounting/delay-accounting.rst
        Documentation/sphinx: fix typos of "its"
        docs/zh_CN: Add sched-domains translation
        doc: fs: remove bdev_try_to_free_page related doc
        ...
      6f38be8f
    • Linus Torvalds's avatar
      Merge tag 'kcsan.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · 1be5bdf8
      Linus Torvalds authored
      Pull KCSAN updates from Paul McKenney:
       "This provides KCSAN fixes and also the ability to take memory barriers
        into account for weakly-ordered systems. This last can increase the
        probability of detecting certain types of data races"
      
      * tag 'kcsan.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: (29 commits)
        kcsan: Only test clear_bit_unlock_is_negative_byte if arch defines it
        kcsan: Avoid nested contexts reading inconsistent reorder_access
        kcsan: Turn barrier instrumentation into macros
        kcsan: Make barrier tests compatible with lockdep
        kcsan: Support WEAK_MEMORY with Clang where no objtool support exists
        compiler_attributes.h: Add __disable_sanitizer_instrumentation
        objtool, kcsan: Remove memory barrier instrumentation from noinstr
        objtool, kcsan: Add memory barrier instrumentation to whitelist
        sched, kcsan: Enable memory barrier instrumentation
        mm, kcsan: Enable barrier instrumentation
        x86/qspinlock, kcsan: Instrument barrier of pv_queued_spin_unlock()
        x86/barriers, kcsan: Use generic instrumentation for non-smp barriers
        asm-generic/bitops, kcsan: Add instrumentation for barriers
        locking/atomics, kcsan: Add instrumentation for barriers
        locking/barriers, kcsan: Support generic instrumentation
        locking/barriers, kcsan: Add instrumentation for barriers
        kcsan: selftest: Add test case to check memory barrier instrumentation
        kcsan: Ignore GCC 11+ warnings about TSan runtime support
        kcsan: test: Add test cases for memory barrier instrumentation
        kcsan: test: Match reordered or normal accesses
        ...
      1be5bdf8
    • Linus Torvalds's avatar
      Merge tag 'lkmm.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · 1c824bf7
      Linus Torvalds authored
      Pull memory model documentation updates from Paul McKenney:
       "This series contains documentation and litmus tests for locking,
        courtesy of Boqun Feng"
      
      * tag 'lkmm.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        tools/memory-model: litmus: Add two tests for unlock(A)+lock(B) ordering
        tools/memory-model: doc: Describe the requirement of the litmus-tests directory
        tools/memory-model: Provide extra ordering for unlock+lock pair on the same CPU
      1c824bf7
    • Linus Torvalds's avatar
      Merge tag 'rcu.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · e7d38f16
      Linus Torvalds authored
      Pull RCU updates from Paul McKenney:
      
       - Documentation updates, perhaps most notably Neil Brown's writeup of
         the reference-counting analogy to RCU.
      
       - Expedited grace-period cleanups.
      
       - Remove CONFIG_RCU_FAST_NO_HZ due to lack of valid users. I have asked
         around, posted a blog entry, and sent this series to LKML without
         result.
      
       - Miscellaneous fixes.
      
       - RCU callback offloading updates, perhaps most notably Frederic
         Weisbecker's updates allowing CPUs booted in the de-offloaded state
         to be offloaded at runtime.
      
       - nolibc fixes from Willy Tarreau and Anmar Faizi, but also including
         Mark Brown's addition of gettid().
      
       - RCU Tasks Trace fixes, including changes that increase the
         scalability of call_rcu_tasks_trace() for the BPF folks (Martin Lau
         and KP Singh).
      
       - Various fixes including those from Wander Lairson Costa and Li
         Zhijian.
      
       - Fixes plus addition of tests for the increased call_rcu_tasks_trace()
         scalability.
      
      * tag 'rcu.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: (87 commits)
        rcu/nocb: Merge rcu_spawn_cpu_nocb_kthread() and rcu_spawn_one_nocb_kthread()
        rcu/nocb: Allow empty "rcu_nocbs" kernel parameter
        rcu/nocb: Create kthreads on all CPUs if "rcu_nocbs=" or "nohz_full=" are passed
        rcu/nocb: Optimize kthreads and rdp initialization
        rcu/nocb: Prepare nocb_cb_wait() to start with a non-offloaded rdp
        rcu/nocb: Remove rcu_node structure from nocb list when de-offloaded
        rcu-tasks: Use fewer callbacks queues if callback flood ends
        rcu-tasks: Use separate ->percpu_dequeue_lim for callback dequeueing
        rcu-tasks: Use more callback queues if contention encountered
        rcu-tasks: Avoid raw-spinlocked wakeups from call_rcu_tasks_generic()
        rcu-tasks: Count trylocks to estimate call_rcu_tasks() contention
        rcu-tasks: Add rcupdate.rcu_task_enqueue_lim to set initial queueing
        rcu-tasks: Make rcu_barrier_tasks*() handle multiple callback queues
        rcu-tasks: Use workqueues for multiple rcu_tasks_invoke_cbs() invocations
        rcu-tasks: Abstract invocations of callbacks
        rcu-tasks: Abstract checking of callback lists
        rcu-tasks: Add a ->percpu_enqueue_lim to the rcu_tasks structure
        rcu-tasks: Inspect stalled task's trc state in locked state
        rcu-tasks: Use spin_lock_rcu_node() and friends
        rcutorture: Combine n_max_cbs from all kthreads in a callback flood
        ...
      e7d38f16
    • Linus Torvalds's avatar
      Merge tag 'printk-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · a2293277
      Linus Torvalds authored
      Pull printk updates from Petr Mladek:
      
       - Remove some twists in the console registration code. It does not
         change the existing behavior except for one corner case. The proper
         default console (with tty binding) will be registered again even when
         it has been removed in the meantime. It is actually a bug fix.
         Anyway, this modified behavior requires some manual interaction.
      
       - Optimize gdb extension for huge ring buffers.
      
       - Do not use atomic operations for a local bitmap variable.
      
       - Update git links in MAINTAINERS.
      
      * tag 'printk-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        MAINTAIERS/printk: Add link to printk git
        MAINTAINERS/vsprintf: Update link to printk git tree
        scripts/gdb: lx-dmesg: read records individually
        printk/console: Clean up boot console handling in register_console()
        printk/console: Remove need_default_console variable
        printk/console: Remove unnecessary need_default_console manipulation
        printk/console: Rename has_preferred_console to need_default_console
        printk/console: Split out code that enables default console
        vsprintf: Use non-atomic bitmap API when applicable
      a2293277
    • Linus Torvalds's avatar
      Merge branch 'for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · e9e64f85
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
      
       - The code around workqueue scheduler hooks got reorganized early 2019
         which unfortuately introdued a couple subtle and rare race conditions
         where preemption can mangle internal workqueue state triggering a
         WARN and possibly causing a stall or at least delay in execution.
      
         Frederic fixed both early December and the fixes were sitting in
         for-5.16-fixes which I forgot to push. They are here now. I'll
         forward them to stable after they land.
      
       - The scheduler hook reorganization has more implicatoins for workqueue
         code in that the hooks are now more strictly synchronized and thus
         the interacting operations can become more straight-forward.
      
         Lai is in the process of simplifying workqueue code and this pull
         request contains some of the patches.
      
      * 'for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Remove the cacheline_aligned for nr_running
        workqueue: Move the code of waking a worker up in unbind_workers()
        workqueue: Remove schedule() in unbind_workers()
        workqueue: Remove outdated comment about exceptional workers in unbind_workers()
        workqueue: Remove the advanced kicking of the idle workers in rebind_workers()
        workqueue: Remove the outdated comment before wq_worker_sleeping()
        workqueue: Fix unbind_workers() VS wq_worker_sleeping() race
        workqueue: Fix unbind_workers() VS wq_worker_running() race
        workqueue: Upgrade queue_work_on() comment
      e9e64f85
    • Linus Torvalds's avatar
      Merge branch 'for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · ea1ca66d
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
       "Nothing too interesting. The only two noticeable changes are a subtle
        cpuset behavior fix and trace event id field being expanded to u64
        from int. Most others are code cleanups"
      
      * 'for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cpuset: convert 'allowed' in __cpuset_node_allowed() to be boolean
        cgroup/rstat: check updated_next only for root
        cgroup: rstat: explicitly put loop variant in while
        cgroup: return early if it is already on preloaded list
        cgroup/cpuset: Don't let child cpusets restrict parent in default hierarchy
        cgroup: Trace event cgroup id fields should be u64
        cgroup: fix a typo in comment
        cgroup: get the wrong css for css_alloc() during cgroup_init_subsys()
        cgroup: rstat: Mark benign data race to silence KCSAN
      ea1ca66d