1. 22 Feb, 2021 40 commits
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · b12b4724
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
      
       - A large series adding wrappers for our interrupt handlers, so that
         irq/nmi/user tracking can be isolated in the wrappers rather than
         spread in each handler.
      
       - Conversion of the 32-bit syscall handling into C.
      
       - A series from Nick to streamline our TLB flushing when using the
         Radix MMU.
      
       - Switch to using queued spinlocks by default for 64-bit server CPUs.
      
       - A rework of our PCI probing so that it happens later in boot, when
         more generic infrastructure is available.
      
       - Two small fixes to allow 32-bit little-endian processes to run on
         64-bit kernels.
      
       - Other smaller features, fixes & cleanups.
      
      Thanks to: Alexey Kardashevskiy, Ananth N Mavinakayanahalli, Aneesh
      Kumar K.V, Athira Rajeev, Bhaskar Chowdhury, Cédric Le Goater, Chengyang
      Fan, Christophe Leroy, Christopher M. Riedl, Fabiano Rosas, Florian
      Fainelli, Frederic Barrat, Ganesh Goudar, Hari Bathini, Jiapeng Chong,
      Joseph J Allen, Kajol Jain, Markus Elfring, Michal Suchanek, Nathan
      Lynch, Naveen N. Rao, Nicholas Piggin, Oliver O'Halloran, Pingfan Liu,
      Po-Hsu Lin, Qian Cai, Ram Pai, Randy Dunlap, Sandipan Das, Stephen
      Rothwell, Tyrel Datwyler, Will Springer, Yury Norov, and Zheng Yongjun.
      
      * tag 'powerpc-5.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (188 commits)
        powerpc/perf: Adds support for programming of Thresholding in P10
        powerpc/pci: Remove unimplemented prototypes
        powerpc/uaccess: Merge raw_copy_to_user_allowed() into raw_copy_to_user()
        powerpc/uaccess: Merge __put_user_size_allowed() into __put_user_size()
        powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user()
        powerpc/64: Fix stack trace not displaying final frame
        powerpc/time: Remove get_tbl()
        powerpc/time: Avoid using get_tbl()
        spi: mpc52xx: Avoid using get_tbl()
        powerpc/syscall: Avoid storing 'current' in another pointer
        powerpc/32: Handle bookE debugging in C in syscall entry/exit
        powerpc/syscall: Do not check unsupported scv vector on PPC32
        powerpc/32: Remove the counter in global_dbcr0
        powerpc/32: Remove verification of MSR_PR on syscall in the ASM entry
        powerpc/syscall: implement system call entry/exit logic in C for PPC32
        powerpc/32: Always save non volatile GPRs at syscall entry
        powerpc/syscall: Change condition to check MSR_RI
        powerpc/syscall: Save r3 in regs->orig_r3
        powerpc/syscall: Use is_compat_task()
        powerpc/syscall: Make interrupt.c buildable on PPC32
        ...
      b12b4724
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 6ff6f86b
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - Generalise byte swapping assembly
      
       - Update debug addresses for STI
      
       - Validate start of physical memory with DTB
      
       - Do not clear SCTLR.nTLSMD in decompressor
      
       - amba/locomo/sa1111 devices remove method return type is void
      
       - address markers for KASAN in page table dump
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled
        ARM: 9055/1: mailbox: arm_mhuv2: make remove callback return void
        amba: Make use of bus_type functions
        amba: Make the remove callback return void
        vfio: platform: simplify device removal
        amba: reorder functions
        amba: Fix resource leak for drivers without .remove
        ARM: 9054/1: arch/arm/mm/mmu.c: Remove duplicate header
        ARM: 9053/1: arm/mm/ptdump:Add address markers for KASAN regions
        ARM: 9051/1: vdso: remove unneded extra-y addition
        ARM: 9050/1: Kconfig: Select ARCH_HAVE_NMI_SAFE_CMPXCHG where possible
        ARM: 9049/1: locomo: make locomo bus's remove callback return void
        ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void
        ARM: 9047/1: smp: remove unused variable
        ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores
        ARM: 9045/1: uncompress: Validate start of physical memory against passed DTB
        ARM: 9042/1: debug: no uncompress debugging while semihosting
        ARM: 9041/1: sti LL_UART: add STiH418 SBC UART0 support
        ARM: 9040/1: use DEBUG_UART_PHYS and DEBUG_UART_VIRT for sti LL_UART
        ARM: 9039/1: assembler: generalize byte swapping macro into rev_l
      6ff6f86b
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2021-02-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4aa36444
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A small set of clockevent fixes which fell through the cracks before
        the 5.11 release:
      
         - Ensure a clock is enabled on sh_cmt
      
         - Trivial compile fail and compile warning fixes"
      
      * tag 'timers-urgent-2021-02-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined
        clocksource/drivers/sh_cmt: Make sure channel clock supply is enabled
        clocksource/drivers/ixp4xx: Select TIMER_OF when needed
      4aa36444
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · c9584234
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
      
       - Update to the way irqs and preemption is tracked via the trace event
         PC field
      
       - Fix handling of unregistering event failing due to allocate memory.
         This is only triggered by failure injection, as it is pretty much
         guaranteed to have less than a page allocation succeed.
      
       - Do not show the useless "filter" or "enable" files for the "ftrace"
         trace system, as they have no effect on doing anything.
      
       - Add a warning if kprobes are registered more than once.
      
       - Synthetic events now have their fields parsed by semicolons. Old
         formats without semicolons will still work, but new features will
         require them.
      
       - New option to allow trace events to show %p without hashing in trace
         file. The trace file can only be read by root, and reading the raw
         event buffer did not have any pointers hashed, so this does not
         expose anything new.
      
       - New directory in tools called tools/tracing, where a new tool that
         reads sequential latency reports from the ftrace latency tracers.
      
       - Other minor fixes and cleanups.
      
      * tag 'trace-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (33 commits)
        kprobes: Fix to delay the kprobes jump optimization
        tracing/tools: Add the latency-collector to tools directory
        tracing: Make hash-ptr option default
        tracing: Add ptr-hash option to show the hashed pointer value
        tracing: Update the stage 3 of trace event macro comment
        tracing: Show real address for trace event arguments
        selftests/ftrace: Add '!event' synthetic event syntax check
        selftests/ftrace: Update synthetic event syntax errors
        tracing: Add a backward-compatibility check for synthetic event creation
        tracing: Update synth command errors
        tracing: Rework synthetic event command parsing
        tracing/dynevent: Delegate parsing to create function
        kprobes: Warn if the kprobe is reregistered
        ftrace: Remove unused ftrace_force_update()
        tracepoints: Code clean up
        tracepoints: Do not punish non static call users
        tracepoints: Remove unnecessary "data_args" macro parameter
        tracing: Do not create "enable" or "filter" files for ftrace event subsystem
        kernel: trace: preemptirq_delay_test: add cpu affinity
        tracepoint: Do not fail unregistering a probe due to memory failure
        ...
      c9584234
    • Linus Torvalds's avatar
      Merge tag 'perf-tools-for-v5.12-2020-02-19' of... · 3a36281a
      Linus Torvalds authored
      Merge tag 'perf-tools-for-v5.12-2020-02-19' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
      
      Pull perf tool updates from Arnaldo Carvalho de Melo:
       "New features:
      
         - Support instruction latency in 'perf report', with both memory
           latency (weight) and instruction latency information, users can
           locate expensive load instructions and understand time spent in
           different stages.
      
         - Extend 'perf c2c' to display the number of loads which were blocked
           by data or address conflict.
      
         - Add 'perf stat' support for L2 topdown events in systems such as
           Intel's Sapphire rapids server.
      
         - Add support for PERF_SAMPLE_CODE_PAGE_SIZE in various tools, as a
           sort key, for instance:
      
              perf report --stdio --sort=comm,symbol,code_page_size
      
         - New 'perf daemon' command to run long running sessions while
           providing a way to control the enablement of events without
           restarting a traditional 'perf record' session.
      
         - Enable counting events for BPF programs in 'perf stat' just like
           for other targets (tid, cgroup, cpu, etc), e.g.:
      
              # perf stat -e ref-cycles,cycles -b 254 -I 1000
                 1.487903822            115,200      ref-cycles
                 1.487903822             86,012      cycles
                 2.489147029             80,560      ref-cycles
                 2.489147029             73,784      cycles
              ^C
      
           The example above counts 'cycles' and 'ref-cycles' of BPF program
           of id 254. It is similar to bpftool-prog-profile command, but more
           flexible.
      
         - Support the new layout for PERF_RECORD_MMAP2 to carry the DSO
           build-id using infrastructure generalised from the eBPF subsystem,
           removing the need for traversing the perf.data file to collect
           build-ids at the end of 'perf record' sessions and helping with
           long running sessions where binaries can get replaced in updates,
           leading to possible mis-resolution of symbols.
      
         - Support filtering by hex address in 'perf script'.
      
         - Support DSO filter in 'perf script', like in other perf tools.
      
         - Add namespaces support to 'perf inject'
      
         - Add support for SDT (Dtrace Style Markers) events on ARM64.
      
        perf record:
      
         - Fix handling of eventfd() when draining a buffer in 'perf record'.
      
         - Improvements to the generation of metadata events for pre-existing
           threads (mmaps, comm, etc), speeding up the work done at the start
           of system wide or per CPU 'perf record' sessions.
      
        Hardware tracing:
      
         - Initial support for tracing KVM with Intel PT.
      
         - Intel PT fixes for IPC
      
         - Support Intel PT PSB (synchronization packets) events.
      
         - Automatically group aux-output events to overcome --filter syntax.
      
         - Enable PERF_SAMPLE_DATA_SRC on ARMs SPE.
      
         - Update ARM's CoreSight hardware tracing OpenCSD library to v1.0.0.
      
        perf annotate TUI:
      
         - Fix handling of 'k' ("show line number") hotkey
      
         - Fix jump parsing for C++ code.
      
        perf probe:
      
         - Add protection to avoid endless loop.
      
        cgroups:
      
         - Avoid reading cgroup mountpoint multiple times, caching it.
      
         - Fix handling of cgroup v1/v2 in mixed hierarchy.
      
        Symbol resolving:
      
         - Add OCaml symbol demangling.
      
         - Further fixes for handling PE executables when using perf with Wine
           and .exe/.dll files.
      
         - Fix 'perf unwind' DSO handling.
      
         - Resolve symbols against debug file first, to deal with artifacts
           related to LTO.
      
         - Fix gap between kernel end and module start on powerpc.
      
        Reporting tools:
      
         - The DSO filter shouldn't show samples in unresolved maps.
      
         - Improve debuginfod support in various tools.
      
        build ids:
      
         - Fix 16-byte build ids in 'perf buildid-cache', add a 'perf test'
           entry for that case.
      
        perf test:
      
         - Support for PERF_SAMPLE_WEIGHT_STRUCT.
      
         - Add test case for PERF_SAMPLE_CODE_PAGE_SIZE.
      
         - Shell based tests for 'perf daemon's commands ('start', 'stop,
           'reconfig', 'list', etc).
      
         - ARM cs-etm 'perf test' fixes.
      
         - Add parse-metric memory bandwidth testcase.
      
        Compiler related:
      
         - Fix 'perf probe' kretprobe issue caused by gcc 11 bug when used
           with -fpatchable-function-entry.
      
         - Fix ARM64 build with gcc 11's -Wformat-overflow.
      
         - Fix unaligned access in sample parsing test.
      
         - Fix printf conversion specifier for IP addresses on arm64, s390 and
           powerpc.
      
        Arch specific:
      
         - Support exposing Performance Monitor Counter SPRs as part of
           extended regs on powerpc.
      
         - Add JSON 'perf stat' metrics for ARM64's imx8mp, imx8mq and imx8mn
           DDR, fix imx8mm ones.
      
         - Fix common and uarch events for ARM64's A76 and Ampere eMag"
      
      * tag 'perf-tools-for-v5.12-2020-02-19' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux: (148 commits)
        perf buildid-cache: Don't skip 16-byte build-ids
        perf buildid-cache: Add test for 16-byte build-id
        perf symbol: Remove redundant libbfd checks
        perf test: Output the sub testing result in cs-etm
        perf test: Suppress logs in cs-etm testing
        perf tools: Fix arm64 build error with gcc-11
        perf intel-pt: Add documentation for tracing virtual machines
        perf intel-pt: Split VM-Entry and VM-Exit branches
        perf intel-pt: Adjust sample flags for VM-Exit
        perf intel-pt: Allow for a guest kernel address filter
        perf intel-pt: Support decoding of guest kernel
        perf machine: Factor out machine__idle_thread()
        perf machine: Factor out machines__find_guest()
        perf intel-pt: Amend decoder to track the NR flag
        perf intel-pt: Retain the last PIP packet payload as is
        perf intel_pt: Add vmlaunch and vmresume as branches
        perf script: Add branch types for VM-Entry and VM-Exit
        perf auxtrace: Automatically group aux-output events
        perf test: Fix unaligned access in sample parsing test
        perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing
        ...
      3a36281a
    • Linus Torvalds's avatar
      Merge tag 'nfsd-5.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · 7c70f3a7
      Linus Torvalds authored
      Pull more nfsd updates from Chuck Lever:
       "Here are a few additional NFSD commits for the merge window:
      
       Optimization:
         - Cork the socket while there are queued replies
      
        Fixes:
         - DRC shutdown ordering
         - svc_rdma_accept() lockdep splat"
      
      * tag 'nfsd-5.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
        SUNRPC: Further clean up svc_tcp_sendmsg()
        SUNRPC: Remove redundant socket flags from svc_tcp_sendmsg()
        SUNRPC: Use TCP_CORK to optimise send performance on the server
        svcrdma: Hold private mutex while invoking rdma_accept()
        nfsd: register pernet ops last, unregister first
      7c70f3a7
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.12-rc1' of git://github.com/ceph/ceph-client · 20bf195e
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "With netfs helper library and fscache rework delayed, just a few cap
        handling improvements to avoid grabbing mmap_lock in some code paths
        and deal with capsnaps better and a mount option cleanup"
      
      * tag 'ceph-for-5.12-rc1' of git://github.com/ceph/ceph-client:
        ceph: defer flushing the capsnap if the Fb is used
        libceph: remove osdtimeout option entirely
        libceph: deprecate [no]cephx_require_signatures options
        ceph: allow queueing cap/snap handling after putting cap references
        ceph: clean up inode work queueing
        ceph: fix flush_snap logic after putting caps
      20bf195e
    • Linus Torvalds's avatar
      Merge tag 'fs_for_v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 9fe19046
      Linus Torvalds authored
      Pull isofs, udf, and quota updates from Jan Kara:
       "Several udf, isofs, and quota fixes"
      
      * tag 'fs_for_v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        parser: Fix kernel-doc markups
        udf: handle large user and group ID
        isofs: handle large user and group ID
        parser: add unsigned int parser
        udf: fix silent AED tagLocation corruption
        isofs: release buffer head before return
        quota: Fix memory leak when handling corrupted quota file
      9fe19046
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · db990385
      Linus Torvalds authored
      Pull fsnotify update from Jan Kara:
       "Make inotify groups be charged against appropriate memcgs"
      
      * tag 'fsnotify_for_v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        inotify, memcg: account inotify instances to kmemcg
      db990385
    • Linus Torvalds's avatar
      Merge tag 'lazytime_for_v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · d61c6a58
      Linus Torvalds authored
      Pull lazytime updates from Jan Kara:
       "Cleanups of the lazytime handling in the writeback code making rules
        for calling ->dirty_inode() filesystem handlers saner"
      
      * tag 'lazytime_for_v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        ext4: simplify i_state checks in __ext4_update_other_inode_time()
        gfs2: don't worry about I_DIRTY_TIME in gfs2_fsync()
        fs: improve comments for writeback_single_inode()
        fs: drop redundant check from __writeback_single_inode()
        fs: clean up __mark_inode_dirty() a bit
        fs: pass only I_DIRTY_INODE flags to ->dirty_inode
        fs: don't call ->dirty_inode for lazytime timestamp updates
        fat: only specify I_DIRTY_TIME when needed in fat_update_time()
        fs: only specify I_DIRTY_TIME when needed in generic_update_time()
        fs: correctly document the inode dirty flags
      d61c6a58
    • Linus Torvalds's avatar
      Merge tag 'exfat-for-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat · c63dca9e
      Linus Torvalds authored
      Pull exfat updates from Namjae Jeon:
      
       - improve file deletion performance with dirsync mount option
      
       - fix shift-out-of-bounds in exfat_fill_super() reported by syzkaller
      
      * tag 'exfat-for-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat:
        exfat: improve performance of exfat_free_cluster when using dirsync mount option
        exfat: fix shift-out-of-bounds in exfat_fill_super()
      c63dca9e
    • Linus Torvalds's avatar
      Merge tag 'zonefs-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · 0f3d950d
      Linus Torvalds authored
      Pull zonefs updates from Damien Le Moal:
       "Two changes:
      
         - A fix that did not make it in time for 5.11, to correct the file
           size initialization of full sequential zone, from Shin'ichiro
      
         - Add file operation tracepoints to help with debugging, from
           Johannes"
      
      * tag 'zonefs-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        zonefs: Fix file size of zones in full condition
        zonefs: add tracepoints for file operations
      0f3d950d
    • Linus Torvalds's avatar
      Merge branch 'work.audit' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 250a25e7
      Linus Torvalds authored
      Pull RCU-safe common_lsm_audit() from Al Viro:
       "Make common_lsm_audit() non-blocking and usable from RCU pathwalk
        context.
      
        We don't really need to grab/drop dentry in there - rcu_read_lock() is
        enough. There's a couple of followups using that to simplify the
        logics in selinux, but those hadn't soaked in -next yet, so they'll
        have to go in next window"
      
      * 'work.audit' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        make dump_common_audit_data() safe to be called from RCU pathwalk
        new helper: d_find_alias_rcu()
      250a25e7
    • Linus Torvalds's avatar
      Merge branch 'work.d_name' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 205f92d7
      Linus Torvalds authored
      Pull d_name whack-a-mole from Al Viro:
       "A bunch of places that play with ->d_name in printks instead of using
        proper formats..."
      
      * 'work.d_name' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        orangefs_file_mmap(): use %pD
        cifs_debug: use %pd instead of messing with ->d_name
        erofs: use %pd instead of messing with ->d_name
        cramfs: use %pD instead of messing with file_dentry()->d_name
      205f92d7
    • Linus Torvalds's avatar
      Merge tag 'memblock-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock · 7b7028ed
      Linus Torvalds authored
      Pull memblock update from Mike Rapoport:
       "Remove return value of memblock_free_all()
      
        memblock_free_all() returns the total count of freed pages and its
        callers used this value to update totalram_pages. This update is now
        anyway a part of memblock_free_all() and its callers no longer check
        the return value, so make memblock_free_all() void"
      
      * tag 'memblock-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
        mm: memblock: remove return value of memblock_free_all()
      7b7028ed
    • Linus Torvalds's avatar
      Merge tag 'kgdb-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux · 899cbb0e
      Linus Torvalds authored
      Pull kgdb updates from Daniel Thompson:
       "Another fairly small set of changes of changes this cycle. The most
        significant functional change is a fix to better manage the flags when
        allocating memory.
      
        Additionally there is the removal of some unused code (which is
        slightly more dramatic than it sounds given it means there are now no
        tasklets in kgdb) together with a tidy up of the debug prints and some
        spelling corrections for the documentation"
      
      * tag 'kgdb-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux:
        kgdb: Remove kgdb_schedule_breakpoint()
        kdb: Make memory allocations more robust
        kdb: kdb_support: Fix debugging information problem
        kernel: debug: fix typo issue
        kgdb: rectify kernel-doc for kgdb_unregister_io_module()
      899cbb0e
    • Linus Torvalds's avatar
      Merge tag 'livepatching-for-5.12' of... · 54ab35d6
      Linus Torvalds authored
      Merge tag 'livepatching-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching
      
      Pull livepatching updates from Petr Mladek:
      
       - Practical information how to implement reliable stacktraces needed by
         the livepatching consistency model by Mark Rutland and Mark Brown.
      
       - Automatically generated documentation contents by Mark Brown.
      
      * tag 'livepatching-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
        Documentation: livepatch: document reliable stacktrace
        Documentation: livepatch: Convert to automatically generated contents
      54ab35d6
    • Linus Torvalds's avatar
      Merge tag 'printk-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · b2bec7d8
      Linus Torvalds authored
      Pull printk updates from Petr Mladek:
      
       - New "no_hash_pointers" kernel parameter causes that %p shows raw
         pointer values instead of hashed ones. It is intended only for
         debugging purposes. Misuse is prevented by a fat warning message that
         is inspired by trace_printk().
      
       - Prevent a possible deadlock when flushing printk_safe buffers during
         panic().
      
       - Fix performance regression caused by the lockless printk ringbuffer.
         It was visible with huge log buffer and long messages.
      
       - Documentation fix-up.
      
      * tag 'printk-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        lib/vsprintf: no_hash_pointers prints all addresses as unhashed
        kselftest: add support for skipped tests
        lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers
        printk: avoid prb_first_valid_seq() where possible
        printk: fix deadlock when kernel panic
        printk: rectify kernel-doc for prb_rec_init_wr()
      b2bec7d8
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-kunit-5.12-rc1' of... · 783955f0
      Linus Torvalds authored
      Merge tag 'linux-kselftest-kunit-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull KUnit updates from Shuah Khan
      
       - support for filtering test suites using glob from Daniel Latypov.
      
           "kunit_filter.glob" command line option is passed to the UML
           kernel, which currently only supports filtering by suite name.
           This support allows running different subsets of tests, e.g.
      
            $ ./tools/testing/kunit/kunit.py build
            $ ./tools/testing/kunit/kunit.py exec 'list*'
            $ ./tools/testing/kunit/kunit.py exec 'kunit*'
      
       - several fixes and cleanups also from Daniel Latypov.
      
      * tag 'linux-kselftest-kunit-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        kunit: tool: fix unintentional statefulness in run_kernel()
        kunit: tool: add support for filtering suites by glob
        kunit: add kunit.filter_glob cmdline option to filter suites
        kunit: don't show `1 == 1` in failed assertion messages
        kunit: make kunit_tool accept optional path to .kunitconfig fragment
        Documentation: kunit: add tips.rst for small examples
        KUnit: Docs: make start.rst example Kconfig follow style.rst
        kunit: tool: simplify kconfig is_subset_of() logic
        minor: kunit: tool: fix unit test so it can run from non-root dir
        kunit: tool: use `with open()` in unit test
        kunit: tool: stop using bare asserts in unit test
        kunit: tool: fix unit test cleanup handling
      783955f0
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-next-5.12-rc1' of... · 80215095
      Linus Torvalds authored
      Merge tag 'linux-kselftest-next-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull Kselftest updates from Shuah Khan:
      
       - dmabuf-heaps test fixes and cleanups from John Stultz
      
       - seccomp test fix to accept any valid fd in user_notification_addfd
      
       - Minor fixes to breakpoints and vDSO tests
      
       - Minor code cleanups to ipc and x86 tests
      
      * tag 'linux-kselftest-next-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/seccomp: Accept any valid fd in user_notification_addfd
        selftests/timens: add futex binary to .gitignore
        selftests: breakpoints: Use correct error messages in breakpoint_test_arm64.c
        selftests/vDSO: fix ABI selftest on riscv
        selftests/x86/ldt_gdt: remove unneeded semicolon
        selftests/ipc: remove unneeded semicolon
        kselftests: dmabuf-heaps: Add extra checking that allocated buffers are zeroed
        kselftests: dmabuf-heaps: Cleanup test output
        kselftests: dmabuf-heaps: Softly fail if don't find a vgem device
        kselftests: dmabuf-heaps: Add clearer checks on DMABUF_BEGIN/END_SYNC
        kselftests: dmabuf-heaps: Fix Makefile's inclusion of the kernel's usr/include dir
      80215095
    • Linus Torvalds's avatar
      Merge tag 'docs-5.12' of git://git.lwn.net/linux · 0e63a5c6
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "It has been a relatively quiet cycle in docsland.
      
         - As promised, the minimum Sphinx version to build the docs is now
           1.7, and we have dropped support for Python 2 entirely. That
           allowed the removal of a bunch of compatibility code.
      
         - A set of treewide warning fixups from Mauro that I applied after it
           became clear nobody else was going to deal with them.
      
         - The automarkup mechanism can now create cross-references from
           relative paths to RST files.
      
         - More translations, typo fixes, and warning fixes"
      
      * tag 'docs-5.12' of git://git.lwn.net/linux: (75 commits)
        docs: kernel-hacking: be more civil
        docs: Remove the Microsoft rhetoric
        Documentation/admin-guide: kernel-parameters: Update nohlt section
        doc/admin-guide: fix spelling mistake: "perfomance" -> "performance"
        docs: Document cross-referencing using relative path
        docs: Enable usage of relative paths to docs on automarkup
        docs: thermal: fix spelling mistakes
        Documentation: admin-guide: Update kvm/xen config option
        docs: Make syscalls' helpers naming consistent
        coding-style.rst: Avoid comma statements
        Documentation: /proc/loadavg: add 3 more field descriptions
        Documentation/submitting-patches: Add blurb about backtraces in commit messages
        Docs: drop Python 2 support
        Move our minimum Sphinx version to 1.7
        Documentation: input: define ABS_PRESSURE/ABS_MT_PRESSURE resolution as grams
        scripts/kernel-doc: add internal hyperlink to DOC: sections
        Update Documentation/admin-guide/sysctl/fs.rst
        docs: Update DTB format references
        docs: zh_CN: add iio index.rst translation
        docs/zh_CN: add iio ep93xx_adc.rst translation
        ...
      0e63a5c6
    • Linus Torvalds's avatar
      Merge tag 'for-5.12/block-ipi-2021-02-21' of git://git.kernel.dk/linux-block · ae42c317
      Linus Torvalds authored
      Pull block IPI updates from Jens Axboe:
       "Avoid IRQ locking for the block IPI handling (Sebastian Andrzej
        Siewior)"
      
      * tag 'for-5.12/block-ipi-2021-02-21' of git://git.kernel.dk/linux-block:
        blk-mq: Use llist_head for blk_cpu_done
        blk-mq: Always complete remote completions requests in softirq
        smp: Process pending softirqs in flush_smp_call_function_from_idle()
      ae42c317
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · d652ea30
      Linus Torvalds authored
      Pull iommu updates from Joerg Roedel:
      
       - ARM SMMU and Mediatek updates from Will Deacon:
           - Support for MT8192 IOMMU from Mediatek
           - Arm v7s io-pgtable extensions for MT8192
           - Removal of TLBI_ON_MAP quirk
           - New Qualcomm compatible strings
           - Allow SVA without hardware broadcast TLB maintenance on SMMUv3
           - Virtualization Host Extension support for SMMUv3 (SVA)
           - Allow SMMUv3 PMU perf driver to be built independently from IOMMU
      
       - Some tidy-up in IOVA and core code
      
       - Conversion of the AMD IOMMU code to use the generic IO-page-table
         framework
      
       - Intel VT-d updates from Lu Baolu:
           - Audit capability consistency among different IOMMUs
           - Add SATC reporting structure support
           - Add iotlb_sync_map callback support
      
       - SDHI support for Renesas IOMMU driver
      
       - Misc cleanups and other small improvments
      
      * tag 'iommu-updates-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (94 commits)
        iommu/amd: Fix performance counter initialization
        MAINTAINERS: repair file pattern in MEDIATEK IOMMU DRIVER
        iommu/mediatek: Fix error code in probe()
        iommu/mediatek: Fix unsigned domid comparison with less than zero
        iommu/vt-d: Parse SATC reporting structure
        iommu/vt-d: Add new enum value and structure for SATC
        iommu/vt-d: Add iotlb_sync_map callback
        iommu/vt-d: Move capability check code to cap_audit files
        iommu/vt-d: Audit IOMMU Capabilities and add helper functions
        iommu/vt-d: Fix 'physical' typos
        iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping
        iommu/vt-d: Fix compile error [-Werror=implicit-function-declaration]
        driver/perf: Remove ARM_SMMU_V3_PMU dependency on ARM_SMMU_V3
        MAINTAINERS: Add entry for MediaTek IOMMU
        iommu/mediatek: Add mt8192 support
        iommu/mediatek: Remove unnecessary check in attach_device
        iommu/mediatek: Support master use iova over 32bit
        iommu/mediatek: Add iova reserved function
        iommu/mediatek: Support for multi domains
        iommu/mediatek: Add get_domain_id from dev->dma_range_map
        ...
      d652ea30
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 3672ac8a
      Linus Torvalds authored
      Pull rdma updates from Jason Gunthorpe:
       "This is quite a small cycle, if not for Lee's 70 patches cleaning the
        kdocs it would be well below typical for patch count.
      
        Most of the interesting work here was in the HNS and rxe drivers which
        got fairly major internal changes.
      
        Summary:
      
         - Driver updates and bug fixes: siw, hns, bnxt_re, mlx5, efa
      
         - Significant rework in rxe to get it ready to have XRC support added
      
         - Several rts bug fixes
      
         - Big series to get to 'make W=1' cleanness, primarily updating kdocs
      
         - Support for creating a RDMA MR from a DMABUF fd to allow PCI peer
           to peer transfers to GPU VRAM
      
         - Device disassociation now works properly with umad
      
         - Work to support more than 255 ports on a RDMA device
      
         - Further support for the new HNS HIP09 hardware
      
         - Coding style cleanups: comma to semicolon, unneded semicolon/blank
           lines, remove 'h' printk format, don't check for NULL before kfree,
           use true/false for bool"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (205 commits)
        RDMA/rtrs-srv: Do not pass a valid pointer to PTR_ERR()
        RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes
        RDMA/mlx5: Fail QP creation if the device can not support the CQE TS
        RDMA/mlx5: Allow CQ creation without attached EQs
        RDMA/rtrs-srv-sysfs: fix missing put_device
        RDMA/rtrs-srv: fix memory leak by missing kobject free
        RDMA/rtrs: Only allow addition of path to an already established session
        RDMA/rtrs-srv: Fix stack-out-of-bounds
        RDMA/rxe: Remove unused pkt->offset
        RDMA/ucma: Fix use-after-free bug in ucma_create_uevent
        RDMA/core: Fix kernel doc warnings for ib_port_immutable_read()
        RDMA/qedr: Use true and false for bool variable
        RDMA/hns: Adjust definition of FRMR fields
        RDMA/hns: Refactor process of posting CMDQ
        RDMA/hns: Adjust fields and variables about CMDQ tail/head
        RDMA/hns: Remove redundant operations on CMDQ
        RDMA/hns: Fixes missing error code of CMDQ
        RDMA/hns: Remove unused member and variable of CMDQ
        RDMA/ipoib: Remove racy Subnet Manager sendonly join checks
        RDMA/mlx5: Support 400Gbps IB rate in mlx5 driver
        ...
      3672ac8a
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · bdb39c95
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This series consists of the usual driver updates (ufs, ibmvfc,
        qla2xxx, hisi_sas, pm80xx) plus the removal of the gdth driver (which
        is bound to cause conflicts with a trivial change somewhere).
      
        The only big major rework of note is the one from Hannes trying to
        clean up our result handling code in the drivers to make it
        consistent"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (194 commits)
        scsi: MAINTAINERS: Adjust to reflect gdth scsi driver removal
        scsi: ufs: Give clk scaling min gear a value
        scsi: lpfc: Fix 'physical' typos
        scsi: megaraid_mbox: Fix spelling of 'allocated'
        scsi: qla2xxx: Simplify the calculation of variables
        scsi: message: fusion: Fix 'physical' typos
        scsi: target: core: Change ASCQ for residual write
        scsi: target: core: Signal WRITE residuals
        scsi: target: core: Set residuals for 4Kn devices
        scsi: hisi_sas: Add trace FIFO debugfs support
        scsi: hisi_sas: Flush workqueue in hisi_sas_v3_remove()
        scsi: hisi_sas: Enable debugfs support by default
        scsi: hisi_sas: Don't check .nr_hw_queues in hisi_sas_task_prep()
        scsi: hisi_sas: Remove deferred probe check in hisi_sas_v2_probe()
        scsi: lpfc: Add auto select on IRQ_POLL
        scsi: ncr53c8xx: Fix typos
        scsi: lpfc: Fix ancient double free
        scsi: qla2xxx: Fix some memory corruption
        scsi: qla2xxx: Remove redundant NULL check
        scsi: megaraid: Fix ifnullfree.cocci warnings
        ...
      bdb39c95
    • Linus Torvalds's avatar
      Merge tag 'for-5.12/dm-changes' of... · 325b7640
      Linus Torvalds authored
      Merge tag 'for-5.12/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Fix DM integrity's HMAC support to provide enhanced security of
         internal_hash and journal_mac capabilities.
      
       - Various DM writecache fixes to address performance, fix table output
         to match what was provided at table creation, fix writing beyond end
         of device when shrinking underlying data device, and a couple other
         small cleanups.
      
       - Add DM crypt support for using trusted keys.
      
       - Fix deadlock when swapping to DM crypt device by throttling number of
         in-flight REQ_SWAP bios. Implemented in DM core so that other
         bio-based targets can opt-in by setting ti->limit_swap_bios.
      
       - Fix various inverted logic bugs in the .iterate_devices callout
         functions that are used to assess if specific feature or capability
         is supported across all devices being combined/stacked by DM.
      
       - Fix DM era target bugs that exposed users to lost writes or memory
         leaks.
      
       - Add DM core support for passing through inline crypto support of
         underlying devices. Includes block/keyslot-manager changes that
         enable extending this support to DM.
      
       - Various small fixes and cleanups (spelling fixes, front padding
         calculation cleanup, cleanup conditional zoned support in targets,
         etc).
      
      * tag 'for-5.12/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (31 commits)
        dm: fix deadlock when swapping to encrypted device
        dm: simplify target code conditional on CONFIG_BLK_DEV_ZONED
        dm: set DM_TARGET_PASSES_CRYPTO feature for some targets
        dm: support key eviction from keyslot managers of underlying devices
        dm: add support for passing through inline crypto support
        block/keyslot-manager: Introduce functions for device mapper support
        block/keyslot-manager: Introduce passthrough keyslot manager
        dm era: only resize metadata in preresume
        dm era: Use correct value size in equality function of writeset tree
        dm era: Fix bitset memory leaks
        dm era: Verify the data block size hasn't changed
        dm era: Reinitialize bitset cache before digesting a new writeset
        dm era: Update in-core bitset after committing the metadata
        dm era: Recover committed writeset after crash
        dm writecache: use bdev_nr_sectors() instead of open-coded equivalent
        dm writecache: fix writing beyond end of underlying device when shrinking
        dm table: remove needless request_queue NULL pointer checks
        dm table: fix zoned iterate_devices based device capability checks
        dm table: fix DAX iterate_devices based device capability checks
        dm table: fix iterate_devices based device capability checks
        ...
      325b7640
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · a99163e9
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
      
       - Sync dtc to upstream version v1.6.0-51-g183df9e9c2b9 and build host
         fdtoverlay
      
       - Add kbuild support to build DT overlays (%.dtbo)
      
       - Drop NULLifying match table in of_match_device().
      
         In preparation for this, there are several driver cleanups to use
         (of_)?device_get_match_data().
      
       - Drop pointless wrappers from DT struct device API
      
       - Convert USB binding schemas to use graph schema and remove old plain
         text graph binding doc
      
       - Convert spi-nor and v3d GPU bindings to DT schema
      
       - Tree wide schema fixes for if/then schemas, array size constraints,
         and undocumented compatible strings in examples
      
       - Handle 'no-map' correctly for already reserved memblock regions
      
      * tag 'devicetree-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (35 commits)
        driver core: platform: Drop of_device_node_put() wrapper
        of: Remove of_dev_{get,put}()
        dt-bindings: usb: Change descibe to describe in usbmisc-imx.txt
        dt-bindings: can: rcar_canfd: Group tuples in pin control properties
        dt-bindings: power: renesas,apmu: Group tuples in cpus properties
        dt-bindings: mtd: spi-nor: Convert to DT schema format
        dt-bindings: Use portable sort for version cmp
        dt-bindings: ethernet-controller: fix fixed-link specification
        dt-bindings: irqchip: Add node name to PRUSS INTC
        dt-bindings: interconnect: Fix the expected number of cells
        dt-bindings: Fix errors in 'if' schemas
        dt-bindings: iommu: renesas,ipmmu-vmsa: Make 'power-domains' conditionally required
        dt-bindings: Fix undocumented compatible strings in examples
        kbuild: Add support to build overlays (%.dtbo)
        scripts: dtc: Remove the unused fdtdump.c file
        scripts: dtc: Build fdtoverlay tool
        scripts/dtc: Update to upstream version v1.6.0-51-g183df9e9c2b9
        scripts: dtc: Fetch fdtoverlay.c from external DTC project
        dt-bindings: thermal: sun8i: Fix misplaced schema keyword in compatible strings
        dt-bindings: iio: dac: Fix AD5686 references
        ...
      a99163e9
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · 882d6edf
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski:
       "It's been a relatively calm release cycle and we're actually removing
        more code than we're adding.
      
        Summary:
      
         - new driver for the Toshiba Visconti platform
      
         - rework of interrupt handling in gpio-tegra
      
         - updates for GPIO selftests: we're now using the character device to
           perform the subsystem checks
      
         - support for a new rcar variant + some code refactoring
      
         - refactoring of gpio-ep93xx
      
         - SPDX License identifier has been updated in the uapi header so that
           userspace programs bundling it can become fully REUSE-compliant
      
         - improvements to pwm handling in gpio-mvebu
      
         - support for interrupt handling and power management for gpio-xilinx
           as well as some code refactoring
      
         - support for a new chip variant in gpio-pca953x
      
         - removal of drivers: zte xs & intel-mid and removal of leftovers
           from intel-msic
      
         - impovements to intel drivers pulled from Andy Shevchenko
      
         - improvements to the gpio-aggregator virtual GPIO driver
      
         - and several minor tweaks and fixes to code and documentation all
           over the place"
      
      * tag 'gpio-updates-for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (71 commits)
        gpio: pcf857x: Fix missing first interrupt
        gpio: ep93xx: refactor base IRQ number
        gpio: ep93xx: refactor ep93xx_gpio_add_bank
        gpio: ep93xx: Fix typo s/hierarchial/hierarchical
        gpio: ep93xx: drop to_irq binding
        gpio: ep93xx: Fix wrong irq numbers in port F
        gpio: uapi: use the preferred SPDX license identifier
        gpio: gpio-xilinx: Add check if width exceeds 32
        gpio: gpio-xilinx: Add support for suspend and resume
        gpio: gpio-xilinx: Add interrupt support
        gpio: gpio-xilinx: Reduce spinlock array to array
        gpio: gpio-xilinx: Simplify with dev_err_probe()
        gpio: msic: Drop driver from Makefile
        gpio: wcove: Split out to_ireg() helper and deduplicate the code
        gpio: wcove: Switch to use regmap_set_bits(), regmap_clear_bits()
        gpio: wcove: Get rid of error prone casting in IRQ handler
        gpio: intel-mid: Remove driver for deprecated platform
        gpio: msic: Remove driver for deprecated platform
        gpio: aggregator: Remove trailing comma in terminator entries
        gpio: aggregator: Use compound literal from the header
        ...
      882d6edf
    • Linus Torvalds's avatar
      Merge tag 'rtc-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · 0328b5f2
      Linus Torvalds authored
      Pull RTC updates from Alexandre Belloni:
       "Many cleanups and a few drivers removal this cycle.
      
        Subsystem:
         - Introduce features bitfield and the first feature: RTC_FEATURE_ALARM
      
        Removed drivers:
         - ab3100
         - coh901331
         - tx4939
         - sirfsoc
      
        Drivers:
         - use rtc_lock and rtc_unlock instead of opencoding
         - constify all struct rtc_class_ops
         - quiet maybe-unused variable warning
         - replace spin_lock_irqsave with spin_lock in hard IRQ
         - pcf2127: disable Power-On Reset Override and run OTP refresh"
      
      * tag 'rtc-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (81 commits)
        rtc: abx80x: Add utility function for writing configuration key
        rtc: pcf2127: properly set flag WD_CD for rtc chips(pcf2129, pca2129)
        rtc: pcf8563: Add NXP PCA8565 compatible
        rtc: s3c: quiet maybe-unused variable warning
        rtc: s3c: stop setting bogus time
        rtc: sd3078: quiet maybe-unused variable warning
        rtc: s35390a: quiet maybe-unused variable warning
        rtc: rx8581: quiet maybe-unused variable warning
        rtc: rx8010: quiet maybe-unused variable warning
        rtc: rv8803: quiet maybe-unused variable warning
        rtc: rv3032: quiet maybe-unused variable warning
        rtc: rv3029: quiet maybe-unused variable warning
        rtc: rv3028: quiet maybe-unused variable warning
        rtc: rs5c372: quiet maybe-unused variable warning
        rtc: pcf85363: quiet maybe-unused variable warning
        rtc: pcf85063: quiet maybe-unused variable warnings
        rtc: meson: quiet maybe-unused variable warning
        rtc: m41t80: quiet maybe-unused variable warning
        rtc: isl1208: quiet maybe-unused variable warning
        rtc: ds3232: quiet maybe-unused variable warning
        ...
      0328b5f2
    • Linus Torvalds's avatar
      Merge tag 'i3c/for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux · 36c1b20d
      Linus Torvalds authored
      Pull i3c update from Alexandre Belloni:
       "Subsystem:
         - Handle drivers without probe or remove callback
         - Remove callback now returns void
         - DT documentation is now in yaml
      
        New driver:
         - Silvaco I3C master"
      
      * tag 'i3c/for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux:
        i3c: master: dw: Drop redundant disec call
        MAINTAINERS: Add Silvaco I3C master
        i3c: master: svc: Add Silvaco I3C master driver
        dt-bindings: i3c: Describe Silvaco master binding
        dt-bindings: Add vendor prefix for Silvaco
        dt-bindings: i3c: mipi-hci: Include the bus binding
        dt-bindings: i3c: Convert the bus description to yaml
        i3c: Make remove callback return void
        i3c: Handle drivers without probe or remove callback
        i3c/master/mipi-i3c-hci: Specify HAS_IOMEM dependency
      36c1b20d
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 579f50ce
      Linus Torvalds authored
      Pull HSI update from Sebastian Reichel:
      
       - runtime PM usage counter fix
      
      * tag 'hsi-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: Fix PM usage counter unbalance in ssi_hw_init
      579f50ce
    • Linus Torvalds's avatar
      Merge tag 'for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · a7dcf5f2
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "Battery/charger driver changes:
         - acer_a500: new fuel gauge driver for Acer Iconia Tab A500
         - bq256xx: new charger driver
         - bq27xxx: Support CHARGE_NOW for bq27z561/bq28z610/bq34z100
         - bq27xxx: Fix inverted CURRENT_NOW sign
         - cpcap: rework fuel gauge and charger drivers
         - ltc4162l: new charger driver
         - max8997-charger: add extcon based current limit configuration
         - max8903, wm97xx, z2: convert to GPIO descriptors (incl. ARM board files)
         - misc cleanup and fixes
      
        Reset drivers:
         - new poweroff driver for ATC260x
         - at91-sama5d2_shdwc: add support for sama7g5
         - drop zte zx driver (SoC support is removed from kernel)"
      
      * tag 'for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (55 commits)
        power-supply: use kobj_to_dev()
        power: supply: charger-manager: fix typo
        power/reset: remove zte zx driver
        power: supply: bq25980: Fix repetive bq25975 with bq25960
        power: supply: smb347-charger: Fix interrupt usage if interrupt is unavailable
        power: supply: axp20x_usb_power: Init work before enabling IRQs
        power: supply: fix sbs-charger build, needs REGMAP_I2C
        power: supply: bq27xxx: fix polarity of current_now
        power: supply: charger-manager: fix incorrect health status
        power: reset: at91-sama5d2_shdwc: add support for sama7g5
        dt-bindings: atmel-sysreg: add microchip,sama7g5-shdwc
        power: reset: at91-sama5d2_shdwc: fix wkupdbc mask
        dt-bindings: power/supply: Add ltc4162-l-charger
        power: supply: bq24190_charger: convert comma to semicolon
        power: supply: ab8500_fg: convert comma to semicolon
        power: supply: ds2780: Switch to using the new API kobj_to_dev()
        power: supply: bq27xxx: Support CHARGE_NOW for bq27z561/bq28z610/bq34z100
        power: supply: cpcap-charger: Fix power_supply_put on null battery pointer
        power: supply: cpcap-battery: constify psy_desc
        power: supply: cpcap-battery: Fix typo
        ...
      a7dcf5f2
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 28b9aaac
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "This is all driver updates, the majority of which is a bunch of new
        Qualcomm clk drivers that dominate the diffstat because we add support
        for six SoCs from that particular vendor.
      
        The other big change is the removal of various clk drivers that are no
        longer used now that the kernel is dropping support for those SoCs.
      
        Beyond that there's the usual non-critical fixes for existing drivers
        and a good number of patches from Lee Jones that cleanup a bunch of
        W=1 enabled builds.
      
        Removed Drivers:
         - Remove efm32 clk driver
         - Remove tango4 clk driver
         - Remove zte zx clk driver
         - Remove sirf prima2/atlast clk drivers
         - Remove u300 clk driver
      
        New Drivers:
         - PLL support on MStar/SigmaStar ARMv7 SoCs
         - CPU clks for Qualcomm SDX55
         - GCC and RPMh clks for Qualcomm SC8180x and SC7280 SoCs
         - GCC clks for Qualcomm SM8350
         - GPU clks for Qualcomm SDM660/SDM630
      
        Updates:
         - Video clk fixups on Qualcomm SM8250
         - Improvements for multimedia clks on Qualcomm MSM8998
         - Fix many warnings with W=1 enabled builds under drivers/clk/
         - Support crystal load capacitance for Versaclock VC5
         - Add a "skip recall" DT binding for Silicon Labs' si570 to avoid
           glitches at boot
         - Convert Xilinx VCU clk driver to a proper clk provider driver
         - Expose Xilinx ZynqMP clk driver to more platforms
         - Amlogic pll driver fixup
         - Amlogic meson8b clock controller dt support clean up
         - Remove mipi clk from the Amlogic axg clock controller
         - New Rockchip rk3368 clock ids related to camera input
         - Use pr_notice() instead of pr_warn() on i.MX6Q pre-boot ldb_di_clk
           reparenting
         - A series from Liu Ying that adds some SCU clocks support for
           i.MX8qxp DC0/MIPI-LVDS subsystems
         - A series from Lucas Stach that adds PLL monitor clocks for i.MX8MQ,
           and clkout1/2 support for i.MX8MM/MN
         - Add I2c and Ethernet (RAVB) clocks on Renesas R-Car V3U
         - Add timer (TMU) clocks on most Renesas R-Car Gen3 SoCs
         - Add video-related (FCPVD/VSPD/VSPX), watchdog (RWDT), serial
           (HSCIF), pincontrol/GPIO (PFC/GPIO), SPI (MSIOF), SDHI, and DMA
           (SYS-DMAC) clocks on Renesas R-Car V3U
         - Add support for the USB 2.0 clock selector on Renesas RZ/G2 SoCs
         - Allwinner H616 SoC clk support"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (171 commits)
        clk: mstar: msc313-mpll: Fix format specifier
        clk: mstar: Allow MStar clk drivers to be compile tested
        clk: qoriq: use macros to generate pll_mask
        clk: qcom: Add Global Clock controller (GCC) driver for SC7280
        dt-bindings: clock: Add SC7280 GCC clock binding
        clk: qcom: rpmh: Add support for RPMH clocks on SC7280
        dt-bindings: clock: Add RPMHCC bindings for SC7280
        clk: qcom: gcc-sm8350: add gdsc
        dt-bindings: clock: Add QCOM SDM630 and SDM660 graphics clock bindings
        clk: qcom: Add SDM660 GPU Clock Controller (GPUCC) driver
        clk: qcom: mmcc-msm8996: Migrate gfx3d clock to clk_rcg2_gfx3d
        clk: qcom: rcg2: Stop hardcoding gfx3d pingpong parent numbers
        dt-bindings: clock: Add support for the SDM630 and SDM660 mmcc
        clk: qcom: Add SDM660 Multimedia Clock Controller (MMCC) driver
        clk: qcom: gcc-sdm660: Mark GPU CFG AHB clock as critical
        clk: qcom: gcc-sdm660: Mark MMSS NoC CFG AHB clock as critical
        clk: qcom: gpucc-msm8998: Allow fabia gpupll0 rate setting
        clk: qcom: gpucc-msm8998: Add resets, cxc, fix flags on gpu_gx_gdsc
        clk: qcom: gdsc: Implement NO_RET_PERIPH flag
        clk: mstar: MStar/SigmaStar MPLL driver
        ...
      28b9aaac
    • Linus Torvalds's avatar
      Merge tag 'thermal-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux · 5d26c176
      Linus Torvalds authored
      Pull thermal updates from Daniel Lezcano:
      
       - Use the newly introduced 'hot' and 'critical' ops for the acpi
         thermal driver (Daniel Lezcano)
      
       - Remove the notify ops as it is no longer used (Daniel Lezcano)
      
       - Remove the 'forced passive' option and the unused bind/unbind
         functions (Daniel Lezcano)
      
       - Remove the THERMAL_TRIPS_NONE and the code cleanup around this macro
         (Daniel Lezcano)
      
       - Rework the delays to make them pre-computed instead of computing them
         again and again at each polling interval (Daniel Lezcano)
      
       - Remove the pointless 'thermal_zone_device_reset' function (Daniel
         Lezcano)
      
       - Use the critical and hot ops to prevent an unexpected system shutdown
         on int340x (Kai-Heng Feng)
      
       - Make the cooling device state private to the thermal subsystem
         (Daniel Lezcano)
      
       - Prevent to use not-power-aware actor devices with the power allocator
         governor (Lukasz Luba)
      
       - Remove 'zx' and 'tango' support along with the corresponding
         platforms (Arnd Bergman)
      
       - Fix several issues on the Omap thermal driver (Tony Lindgren)
      
       - Add support for adc-tm5 PMIC thermal monitor for Qcom platforms
         (Dmitry Baryshkov)
      
       - Fix an initialization loop in the adc-tm5 (Colin Ian King)
      
       - Fix a return error check in the cpufreq cooling device (Viresh Kumar)
      
      * tag 'thermal-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux: (26 commits)
        thermal: cpufreq_cooling: freq_qos_update_request() returns < 0 on error
        thermal: qcom: Fix comparison with uninitialized variable channels_available
        thermal: qcom: add support for adc-tm5 PMIC thermal monitor
        dt-bindings: thermal: qcom: add adc-thermal monitor bindings
        thermal: ti-soc-thermal: Use non-inverted define for omap4
        thermal: ti-soc-thermal: Simplify polling with iopoll
        thermal: ti-soc-thermal: Fix stuck sensor with continuous mode for 4430
        thermal: ti-soc-thermal: Skip pointless register access for dra7
        thermal/drivers/zx: Remove zx driver
        thermal/drivers/tango: Remove tango driver
        thermal: power allocator: fail binding for non-power actor devices
        thermal/core: Make cooling device state change private
        thermal: intel: pch: Fix unexpected shutdown at critical temperature
        thermal: int340x: Fix unexpected shutdown at critical temperature
        thermal/core: Remove pointless thermal_zone_device_reset() function
        thermal/core: Remove ms based delay fields
        thermal/core: Use precomputed jiffies for the polling
        thermal/core: Precompute the delays from msecs to jiffies
        thermal/core: Remove unused macro THERMAL_TRIPS_NONE
        thermal/core: Remove THERMAL_TRIPS_NONE test
        ...
      5d26c176
    • Linus Torvalds's avatar
      Merge tag 'tag-chrome-platform-for-v5.12' of... · b996c10e
      Linus Torvalds authored
      Merge tag 'tag-chrome-platform-for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux
      
      Pull chrome platform updates from Benson Leung:
       "Lots of changes to the cros_ec_typec driver for 5.12.
      
        A portion of this this set of cros_ec_typec driver's changes was
        merged through GregKH's USB tree in order to satisfy cros_ec_typec
        driver and typec connector class subsystem dependencies of subsequent
        changes.
      
        Summary:
      
        cros_ec_typec:
         - Registration of cable plug information
         - Support for SOP' plug registration and altmodes
         - Support for reporting number of altmodes supported by partners and
           plugs
         - Send mux configuration ack to EC via a new host command
         - Support mux control with no port partner present
         - Decouple cable removal from partner removal
      
        cros_ec misc:
         - Fix some event masking in cros_ec_proto.
         - Gwendal reworked cros_ec's top and bottom half for consistency in
           ishtp and rpmsg
         - Constify static attribute_group structs"
      
      * tag 'tag-chrome-platform-for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:
        platform/chrome: cros_ec_typec: Flush pending work
        platform/chrome: cros_ec_types: Support disconnect events without partners
        platform/chrome: cros_ec_typec: Skip port partner check in configure_mux()
        platform/chrome: cros_ec_typec: Decouple partner removal
        platform/chrome: cros_ec: Call interrupt bottom half at probe time
        platform/chrome: cros_ec: Call interrupt bottom half in ISH or RPMSG mode
        platform/chrome: cros_ec_sysfs: Add cold-ap-off to sysfs reboot.
        platform/chrome: cros_ec_commands: Add host command to keep AP off after EC reset.
        platform/chrome: Constify static attribute_group structs
        platform/chrome: cros_ec_proto: Add LID and BATTERY to default mask
        platform/chrome: cros_ec_proto: Use EC_HOST_EVENT_MASK not BIT
      b996c10e
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · f158bbee
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "Core Frameworks:
         - Standardise MFD_CELL_* helpers
      
        New Drivers:
         - Add support for Acer Iconia Tab A500 Embedded Controller
      
        New Device Support:
         - Add support for ROHM BD9574MWF to BD9571MWV
         - Add support for Intel Alder Lake PCH-P PCI to LPSS
         - Add support for Intel Alder Lake PCH-S PCI to LPSS
      
        New Functionality:
         - Support ACPI enumeration; arizona
      
        Fix-ups:
         - Managed resources; bd9571mwv
         - DT additions/fix-ups; bd9571mwv, iqs62x, max8997, gateworks-gsc, ene-kb930
         - Convert to SPDX; bd9571mw
         - Fix return values/error handling; sunxi
         - Provide SOFTDEP; arizona
         - Make use of DIV_ROUND_UP; mcp-sa11x0
         - Use generic APIs; arizona
         - Add MAC address sysfs entries; intel-m10-bmc
         - Trivial: Coding-style fix-ups; iqs62x
         - Trivial: Remove superflouous code; iqs62x
         - Clear-up naming conventions; iqs62x
      
        Bug Fixes:
         - Fix 'pointer from integer' error; altera-sysmgr
         - Convert SGI_MFD_IOC3 from tristate to bool; Kconfig
         - Fix interrupt handling; gateworks-gsc
         - Extend required delay; iqs62x
         - Do not use I2C polling during calibration; iqs62x
         - Do no adjust clock frequency during calibration; iqs62x
         - Fix use-after-free; wm831x-auxad"
      
      * tag 'mfd-next-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (32 commits)
        mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq()
        mfd: iqs62x: Do not change clock frequency during ATI
        mfd: iqs62x: Do not poll during ATI
        mfd: iqs62x: Increase interrupt handler return delay
        mfd: iqs62x: Rename regmap_config struct
        mfd: iqs62x: Remove unused bit mask
        mfd: iqs62x: Remove superfluous whitespace above fallthroughs
        mfd: intel-lpss: Add Intel Alder Lake PCH-S PCI IDs
        mfd: intel-m10-bmc: Expose MAC address and count
        mfd: Add driver for Embedded Controller found on Acer Iconia Tab A500
        dt-bindings: mfd: Add ENE KB930 Embedded Controller binding
        dt-bindings: mfd: gateworks-gsc: Add fan-tach mode
        mfd: intel-lpss: Add Intel Alder Lake PCH-P PCI IDs
        mfd: gateworks-gsc: Fix interrupt type
        mfd: Standardise MFD_CELL_* helper names
        mfd: mcp-sa11x0: Use DIV_ROUND_UP to calculate rw_timeout
        mfd: max8997: Add of_compatible to Extcon and Charger mfd_cell
        dt-bindings: mfd: Correct the node name of the panel LED
        mfd: sgi-ioc3: Turn Kconfig option into a bool
        mfd: altera-sysmgr: Fix physical address storing more
        ...
      f158bbee
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 4512d92b
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Functionality:
         - Convert to GPIO descriptors
      
        Fix-ups:
         - Trivial: fix coding style in sky81452-backlight
         - Ensure backlight state is known on bring-up in ktd253
         - Use common platform API in qcom-wled and fbdev"
      
      * tag 'backlight-next-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight/video: Use Platform getter/setter functions
        backlight: ktd253: Bring up in a known state
        backlight: sky81452-backlight: Convert comma to semicolon
        backlight: lms283gf05: Convert to GPIO descriptors
      4512d92b
    • Linus Torvalds's avatar
      Merge tag 'auxdisplay-for-linus-v5.12' of git://github.com/ojeda/linux · 66615c4e
      Linus Torvalds authored
      Pull auxdisplay updates from Miguel Ojeda:
       "A set of auxdisplay fixes and improvements from Geert Uytterhoeven,
        and one from Robin van der Gracht that got lost a long time ago"
      
      * tag 'auxdisplay-for-linus-v5.12' of git://github.com/ojeda/linux:
        auxdisplay: Fix duplicate CHARLCD config symbol
        auxdisplay: ht16k33: Fix refresh rate handling
        dt-bindings: auxdisplay: ht16k33: Convert to json-schema
        dt-bindings: auxdisplay: ht16k33: Fix default-brightness-level range
        dt-bindings: auxdisplay: ht16k33: Keyscan function should be optional
      66615c4e
    • Linus Torvalds's avatar
      Merge tag 'spi-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · a2590d69
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "The main focus of this release from a framework point of view has been
        spi-mem where we've acquired support for a few new hardware features
        which enable better performance on suitable hardware.
      
        Otherwise mostly thanks to Arnd's cleanup efforts on old platforms
        we've removed several obsolete drivers which just about balance out
        the newer drivers we've added this cycle.
      
        Summary:
      
         - Allow drivers to flag if they are unidirectional.
      
         - Support for DTR mode and hardware acceleration of dummy cycles in
           spi-mem.
      
         - Support for Allwinder H616, Intel Lightning Mountain, nVidia Tegra
           QuadSPI, Realtek RTL838x and RTL839x.
      
         - Removal of obsolete EFM32, Txx9 and SIRF Prima and Atlas drivers"
      
      * tag 'spi-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (76 commits)
        spi: Skip zero-length transfers in spi_transfer_one_message()
        spi: dw: Avoid stack content exposure
        spi: cadence-quadspi: Use spi_mem_dtr_supports_op()
        spi: spi-mem: add spi_mem_dtr_supports_op()
        spi: atmel-quadspi: Disable the QSPI IP at suspend()
        spi: pxa2xx: Add IDs for the controllers found on Intel Lynxpoint
        spi: pxa2xx: Fix the controller numbering for Wildcat Point
        spi: Change provied to provided in the file spi.h
        spi: mediatek: add set_cs_timing support
        spi: support CS timing for HW & SW mode
        spi: add power control when set_cs_timing
        spi: stm32: make spurious and overrun interrupts visible
        spi: stm32h7: replace private SPI_1HZ_NS with NSEC_PER_SEC
        spi: stm32: defer probe for reset
        spi: stm32: driver uses reset controller only at init
        spi: stm32h7: ensure message are smaller than max size
        spi: stm32: use bitfield macros
        spi: stm32: do not mandate cs_gpio
        spi: stm32: properly handle 0 byte transfer
        spi: clps711xx: remove redundant white-space
        ...
      a2590d69
    • Linus Torvalds's avatar
      Merge tag 'regulator-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · d6560052
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "Quite an active release for driver specific updates but very little
        going on at the subsystem level this time for the regulator API.
      
        Summary:
      
         - Overhaul of the Qualcomm LABIBB driver.
      
         - Allow use of regulator_sync_voltage() on coupled regulators.
      
         - Support for Action ATC260x, Mediatek DVSRC and MT6315, Qualcomm
           PCM8180/c and PM8009-1 and Richtek RT4831
      
         - Removal of the AB3100 driver"
      
      * tag 'regulator-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (49 commits)
        regulator: bd718x7, bd71828, Fix dvs voltage levels
        regulator: pca9450: Add sd-vsel GPIO
        regulator: pca9450: Enable system reset on WDOG_B assertion
        regulator: pca9450: Add SD_VSEL GPIO for LDO5
        regulator: qcom-rpmh: fix pm8009 ldo7
        regulator: mt6315: Add support for MT6315 regulator
        regulator: document binding for MT6315 regulator
        regulator: dt-bindings: Document charger-supply for max8997
        regulator: qcom-labibb: Use disable_irq_nosync from isr
        regulator: pf8x00: Fix typo for PF8200 chip name
        regulator: pf8x00: set ramp_delay for bucks
        regulator: core: Avoid debugfs: Directory ... already present! error
        regulator: pf8x00: Add suspend support
        regulator: Make regulator_sync_voltage() usable by coupled regulators
        regulator: s5m8767: Drop regulators OF node reference
        regulator: qcom-rpmh: Add pmc8180 and pmc8180c
        regulator: qcom-rpmh: Add pmc8180 and pmc8180c
        regulator: s5m8767: Fix reference count leak
        regulator: remove ab3100 driver
        regulator: axp20x: Fix reference cout leak
        ...
      d6560052