1. 28 Jan, 2020 22 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c0275ae7
      Linus Torvalds authored
      Pull x86 cpu-features updates from Ingo Molnar:
       "The biggest change in this cycle was a large series from Sean
        Christopherson to clean up the handling of VMX features. This both
        fixes bugs/inconsistencies and makes the code more coherent and
        future-proof.
      
        There are also two cleanups and a minor TSX syslog messages
        enhancement"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
        x86/cpu: Remove redundant cpu_detect_cache_sizes() call
        x86/cpu: Print "VMX disabled" error message iff KVM is enabled
        KVM: VMX: Allow KVM_INTEL when building for Centaur and/or Zhaoxin CPUs
        perf/x86: Provide stubs of KVM helpers for non-Intel CPUs
        KVM: VMX: Use VMX_FEATURE_* flags to define VMCS control bits
        KVM: VMX: Check for full VMX support when verifying CPU compatibility
        KVM: VMX: Use VMX feature flag to query BIOS enabling
        KVM: VMX: Drop initialization of IA32_FEAT_CTL MSR
        x86/cpufeatures: Add flag to track whether MSR IA32_FEAT_CTL is configured
        x86/cpu: Set synthetic VMX cpufeatures during init_ia32_feat_ctl()
        x86/cpu: Print VMX flags in /proc/cpuinfo using VMX_FEATURES_*
        x86/cpu: Detect VMX features on Intel, Centaur and Zhaoxin CPUs
        x86/vmx: Introduce VMX_FEATURES_*
        x86/cpu: Clear VMX feature flag if VMX is not fully enabled
        x86/zhaoxin: Use common IA32_FEAT_CTL MSR initialization
        x86/centaur: Use common IA32_FEAT_CTL MSR initialization
        x86/mce: WARN once if IA32_FEAT_CTL MSR is left unlocked
        x86/intel: Initialize IA32_FEAT_CTL MSR at boot
        tools/x86: Sync msr-index.h from kernel sources
        selftests, kvm: Replace manual MSR defs with common msr-index.h
        ...
      c0275ae7
    • Linus Torvalds's avatar
      Merge branch 'x86-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f6170f0a
      Linus Torvalds authored
      Pull misc x86 updates from Ingo Molnar:
       "Misc changes:
      
         - Enhance #GP fault printouts by distinguishing between canonical and
           non-canonical address faults, and also add KASAN fault decoding.
      
         - Fix/enhance the x86 NMI handler by putting the duration check into
           a direct function call instead of an irq_work which we know to be
           broken in some cases.
      
         - Clean up do_general_protection() a bit"
      
      * 'x86-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/nmi: Remove irq_work from the long duration NMI handler
        x86/traps: Cleanup do_general_protection()
        x86/kasan: Print original address on #GP
        x86/dumpstack: Introduce die_addr() for die() with #GP fault address
        x86/traps: Print address on #GP
        x86/insn-eval: Add support for 64-bit kernel mode
      f6170f0a
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6da49d1a
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Misc cleanups all around the map"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/CPU/AMD: Remove amd_get_topology_early()
        x86/tsc: Remove redundant assignment
        x86/crash: Use resource_size()
        x86/cpu: Add a missing prototype for arch_smt_update()
        x86/nospec: Remove unused RSB_FILL_LOOPS
        x86/vdso: Provide missing include file
        x86/Kconfig: Correct spelling and punctuation
        Documentation/x86/boot: Fix typo
        x86/boot: Fix a comment's incorrect file reference
        x86/process: Remove set but not used variables prev and next
        x86/Kconfig: Fix Kconfig indentation
      6da49d1a
    • Linus Torvalds's avatar
      Merge branch 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4244057c
      Linus Torvalds authored
      Pull x86 resource control updates from Ingo Molnar:
       "The main change in this tree is the extension of the resctrl procfs
        ABI with a new file that helps tooling to navigate from tasks back to
        resctrl groups: /proc/{pid}/cpu_resctrl_groups.
      
        Also fix static key usage for certain feature combinations and
        simplify the task exit resctrl case"
      
      * 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/resctrl: Add task resctrl information display
        x86/resctrl: Check monitoring static key in the MBM overflow handler
        x86/resctrl: Do not reconfigure exiting tasks
      4244057c
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6b90e71a
      Linus Torvalds authored
      Pull x86 boot update from Ingo Molnar:
       "Two minor changes: fix an atypical binutils combination build bug, and
        also fix a VRAM size check for simplefb"
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/sysfb: Fix check for bad VRAM size
        x86/boot: Discard .eh_frame sections
      6b90e71a
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · bcc8aff6
      Linus Torvalds authored
      Pull x86 asm updates from Ingo Molnar:
       "Misc updates:
      
         - Remove last remaining calls to exception_enter/exception_exit() and
           simplify the entry code some more.
      
         - Remove force_iret()
      
         - Add support for "Fast Short Rep Mov", which is available starting
           with Ice Lake Intel CPUs - and make the x86 assembly version of
           memmove() use REP MOV for all sizes when FSRM is available.
      
         - Micro-optimize/simplify the 32-bit boot code a bit.
      
         - Use a more future-proof SYSRET instruction mnemonic"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Simplify calculation of output address
        x86/entry/64: Add instruction suffix to SYSRET
        x86: Remove force_iret()
        x86/cpufeatures: Add support for fast short REP; MOVSB
        x86/context-tracking: Remove exception_enter/exit() from KVM_PV_REASON_PAGE_NOT_PRESENT async page fault
        x86/context-tracking: Remove exception_enter/exit() from do_page_fault()
      bcc8aff6
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 435dd727
      Linus Torvalds authored
      Pull x86 apic fix from Ingo Molnar:
       "A single commit that simplifies the code and gets rid of a compiler
        warning"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic/uv: Avoid unused variable warning
      435dd727
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c677124e
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "These were the main changes in this cycle:
      
         - More -rt motivated separation of CONFIG_PREEMPT and
           CONFIG_PREEMPTION.
      
         - Add more low level scheduling topology sanity checks and warnings
           to filter out nonsensical topologies that break scheduling.
      
         - Extend uclamp constraints to influence wakeup CPU placement
      
         - Make the RT scheduler more aware of asymmetric topologies and CPU
           capacities, via uclamp metrics, if CONFIG_UCLAMP_TASK=y
      
         - Make idle CPU selection more consistent
      
         - Various fixes, smaller cleanups, updates and enhancements - please
           see the git log for details"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (58 commits)
        sched/fair: Define sched_idle_cpu() only for SMP configurations
        sched/topology: Assert non-NUMA topology masks don't (partially) overlap
        idle: fix spelling mistake "iterrupts" -> "interrupts"
        sched/fair: Remove redundant call to cpufreq_update_util()
        sched/psi: create /proc/pressure and /proc/pressure/{io|memory|cpu} only when psi enabled
        sched/fair: Fix sgc->{min,max}_capacity calculation for SD_OVERLAP
        sched/fair: calculate delta runnable load only when it's needed
        sched/cputime: move rq parameter in irqtime_account_process_tick
        stop_machine: Make stop_cpus() static
        sched/debug: Reset watchdog on all CPUs while processing sysrq-t
        sched/core: Fix size of rq::uclamp initialization
        sched/uclamp: Fix a bug in propagating uclamp value in new cgroups
        sched/fair: Load balance aggressively for SCHED_IDLE CPUs
        sched/fair : Improve update_sd_pick_busiest for spare capacity case
        watchdog: Remove soft_lockup_hrtimer_cnt and related code
        sched/rt: Make RT capacity-aware
        sched/fair: Make EAS wakeup placement consider uclamp restrictions
        sched/fair: Make task_fits_capacity() consider uclamp restrictions
        sched/uclamp: Rename uclamp_util_with() into uclamp_rq_util_with()
        sched/uclamp: Make uclamp util helpers use and return UL values
        ...
      c677124e
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c0e809e2
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Kernel side changes:
      
         - Ftrace is one of the last W^X violators (after this only KLP is
           left). These patches move it over to the generic text_poke()
           interface and thereby get rid of this oddity. This requires a
           surprising amount of surgery, by Peter Zijlstra.
      
         - x86/AMD PMUs: add support for 'Large Increment per Cycle Events' to
           count certain types of events that have a special, quirky hw ABI
           (by Kim Phillips)
      
         - kprobes fixes by Masami Hiramatsu
      
        Lots of tooling updates as well, the following subcommands were
        updated: annotate/report/top, c2c, clang, record, report/top TUI,
        sched timehist, tests; plus updates were done to the gtk ui, libperf,
        headers and the parser"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (57 commits)
        perf/x86/amd: Add support for Large Increment per Cycle Events
        perf/x86/amd: Constrain Large Increment per Cycle events
        perf/x86/intel/rapl: Add Comet Lake support
        tracing: Initialize ret in syscall_enter_define_fields()
        perf header: Use last modification time for timestamp
        perf c2c: Fix return type for histogram sorting comparision functions
        perf beauty sockaddr: Fix augmented syscall format warning
        perf/ui/gtk: Fix gtk2 build
        perf ui gtk: Add missing zalloc object
        perf tools: Use %define api.pure full instead of %pure-parser
        libperf: Setup initial evlist::all_cpus value
        perf report: Fix no libunwind compiled warning break s390 issue
        perf tools: Support --prefix/--prefix-strip
        perf report: Clarify in help that --children is default
        tools build: Fix test-clang.cpp with Clang 8+
        perf clang: Fix build with Clang 9
        kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic
        tools lib: Fix builds when glibc contains strlcpy()
        perf report/top: Make 'e' visible in the help and make it toggle showing callchains
        perf report/top: Do not offer annotation for symbols without samples
        ...
      c0e809e2
    • Linus Torvalds's avatar
      Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2180f214
      Linus Torvalds authored
      Pull locking updates from Ingo Molnar:
       "Just a handful of changes in this cycle: an ARM64 performance
        optimization, a comment fix and a debug output fix"
      
      * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/osq: Use optimized spinning loop for arm64
        locking/qspinlock: Fix inaccessible URL of MCS lock paper
        locking/lockdep: Fix lockdep_stats indentation problem
      2180f214
    • Linus Torvalds's avatar
      Merge branch 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 634cd4b6
      Linus Torvalds authored
      Pull EFI updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - Cleanup of the GOP [graphics output] handling code in the EFI stub
      
         - Complete refactoring of the mixed mode handling in the x86 EFI stub
      
         - Overhaul of the x86 EFI boot/runtime code
      
         - Increase robustness for mixed mode code
      
         - Add the ability to disable DMA at the root port level in the EFI
           stub
      
         - Get rid of RWX mappings in the EFI memory map and page tables,
           where possible
      
         - Move the support code for the old EFI memory mapping style into its
           only user, the SGI UV1+ support code.
      
         - plus misc fixes, updates, smaller cleanups.
      
        ... and due to interactions with the RWX changes, another round of PAT
        cleanups make a guest appearance via the EFI tree - with no side
        effects intended"
      
      * 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (75 commits)
        efi/x86: Disable instrumentation in the EFI runtime handling code
        efi/libstub/x86: Fix EFI server boot failure
        efi/x86: Disallow efi=old_map in mixed mode
        x86/boot/compressed: Relax sed symbol type regex for LLVM ld.lld
        efi/x86: avoid KASAN false positives when accessing the 1: 1 mapping
        efi: Fix handling of multiple efi_fake_mem= entries
        efi: Fix efi_memmap_alloc() leaks
        efi: Add tracking for dynamically allocated memmaps
        efi: Add a flags parameter to efi_memory_map
        efi: Fix comment for efi_mem_type() wrt absent physical addresses
        efi/arm: Defer probe of PCIe backed efifb on DT systems
        efi/x86: Limit EFI old memory map to SGI UV machines
        efi/x86: Avoid RWX mappings for all of DRAM
        efi/x86: Don't map the entire kernel text RW for mixed mode
        x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd
        efi/libstub/x86: Fix unused-variable warning
        efi/libstub/x86: Use mandatory 16-byte stack alignment in mixed mode
        efi/libstub/x86: Use const attribute for efi_is_64bit()
        efi: Allow disabling PCI busmastering on bridges during boot
        efi/x86: Allow translating 64-bit arguments for mixed mode calls
        ...
      634cd4b6
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d99391ec
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "The RCU changes in this cycle were:
         - Expedited grace-period updates
         - kfree_rcu() updates
         - RCU list updates
         - Preemptible RCU updates
         - Torture-test updates
         - Miscellaneous fixes
         - Documentation updates"
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (69 commits)
        rcu: Remove unused stop-machine #include
        powerpc: Remove comment about read_barrier_depends()
        .mailmap: Add entries for old paulmck@kernel.org addresses
        srcu: Apply *_ONCE() to ->srcu_last_gp_end
        rcu: Switch force_qs_rnp() to for_each_leaf_node_cpu_mask()
        rcu: Move rcu_{expedited,normal} definitions into rcupdate.h
        rcu: Move gp_state_names[] and gp_state_getname() to tree_stall.h
        rcu: Remove the declaration of call_rcu() in tree.h
        rcu: Fix tracepoint tracking RCU CPU kthread utilization
        rcu: Fix harmless omission of "CONFIG_" from #if condition
        rcu: Avoid tick_dep_set_cpu() misordering
        rcu: Provide wrappers for uses of ->rcu_read_lock_nesting
        rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special()
        rcu: Clear ->rcu_read_unlock_special only once
        rcu: Clear .exp_hint only when deferred quiescent state has been reported
        rcu: Rename some instance of CONFIG_PREEMPTION to CONFIG_PREEMPT_RCU
        rcu: Remove kfree_call_rcu_nobatch()
        rcu: Remove kfree_rcu() special casing and lazy-callback handling
        rcu: Add support for debug_objects debugging for kfree_rcu()
        rcu: Add multiple in-flight batches of kfree_rcu() work
        ...
      d99391ec
    • Linus Torvalds's avatar
      Merge branch 'core-objtool-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8b561778
      Linus Torvalds authored
      Pull objtool updates from Ingo Molnar:
       "The main changes are to move the ORC unwind table sorting from early
        init to build-time - this speeds up booting.
      
        No change in functionality intended"
      
      * 'core-objtool-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/unwind/orc: Fix !CONFIG_MODULES build warning
        x86/unwind/orc: Remove boot-time ORC unwind tables sorting
        scripts/sorttable: Implement build-time ORC unwind table sorting
        scripts/sorttable: Rename 'sortextable' to 'sorttable'
        scripts/sortextable: Refactor the do_func() function
        scripts/sortextable: Remove dead code
        scripts/sortextable: Clean up the code to meet the kernel coding style better
        scripts/sortextable: Rewrite error/success handling
      8b561778
    • Linus Torvalds's avatar
      Merge branch 'core-headers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9f2a4301
      Linus Torvalds authored
      Pull header cleanup from Ingo Molnar:
       "This is a treewide cleanup, mostly (but not exclusively) with x86
        impact, which breaks implicit dependencies on the asm/realtime.h
        header and finally removes it from asm/acpi.h"
      
      * 'core-headers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ACPI/sleep: Move acpi_get_wakeup_address() into sleep.c, remove <asm/realmode.h> from <asm/acpi.h>
        ACPI/sleep: Convert acpi_wakeup_address into a function
        x86/ACPI/sleep: Remove an unnecessary include of asm/realmode.h
        ASoC: Intel: Skylake: Explicitly include linux/io.h for virt_to_phys()
        vmw_balloon: Explicitly include linux/io.h for virt_to_phys()
        virt: vbox: Explicitly include linux/io.h to pick up various defs
        efi/capsule-loader: Explicitly include linux/io.h for page_to_phys()
        perf/x86/intel: Explicitly include asm/io.h to use virt_to_phys()
        x86/kprobes: Explicitly include vmalloc.h for set_vm_flush_reset_perms()
        x86/ftrace: Explicitly include vmalloc.h for set_vm_flush_reset_perms()
        x86/boot: Explicitly include realmode.h to handle RM reservations
        x86/efi: Explicitly include realmode.h to handle RM trampoline quirk
        x86/platform/intel/quark: Explicitly include linux/io.h for virt_to_phys()
        x86/setup: Enhance the comments
        x86/setup: Clean up the header portion of setup.c
      9f2a4301
    • Ingo Molnar's avatar
    • Linus Torvalds's avatar
      Merge tag 'x86-pti-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b0be0eff
      Linus Torvalds authored
      Pull x86 pti updates from Thomas Gleixner:
       "The performance deterioration departement provides a few non-scary
        fixes and improvements:
      
         - Update the cached HLE state when the TSX state is changed via the
           new control register. This ensures feature bit consistency.
      
         - Exclude the new Zhaoxin CPUs from Spectre V2 and SWAPGS
           vulnerabilities"
      
      * tag 'x86-pti-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/speculation/swapgs: Exclude Zhaoxin CPUs from SWAPGS vulnerability
        x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2
        x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR
      b0be0eff
    • Linus Torvalds's avatar
      Merge tag 'irq-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3d3b44a6
      Linus Torvalds authored
      Pull irq updates from Thomas Gleixner:
       "The interrupt departement provides:
      
         - A mechanism to shield isolated tasks from managed interrupts:
      
           The affinity of managed interrupts is completely controlled by the
           kernel and user space has no influence on them. The reason is that
           the automatically assigned affinity correlates to the multi-queue
           CPU handling of block devices.
      
           If the generated affinity mask spaws both housekeeping and isolated
           CPUs the interrupt could be routed to an isolated CPU which would
           then be disturbed by I/O submitted by a housekeeping CPU.
      
           The new mechamism ensures that as long as one housekeeping CPU is
           online in the assigned affinity mask the interrupt is routed to a
           housekeeping CPU.
      
           If there is no online housekeeping CPU in the affinity mask, then
           the interrupt is routed to an isolated CPU to keep the device queue
           intact, but unless the isolated CPU submits I/O by itself these
           interrupts are not raised.
      
         - A small addon to the device tree irqdomain core code to avoid
           duplication in irq chip drivers
      
         - Conversion of the SiFive PLIC to hierarchical domains
      
         - The usual pile of new irq chip drivers: SiFive GPIO, Aspeed SCI,
           NXP INTMUX, Meson A1 GPIO
      
         - The first cut of support for the new ARM GICv4.1
      
         - The usual pile of fixes and improvements in core and driver code"
      
      * tag 'irq-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (33 commits)
        genirq, sched/isolation: Isolate from handling managed interrupts
        irqchip/gic-v4.1: Allow direct invalidation of VLPIs
        irqchip/gic-v4.1: Suppress per-VLPI doorbell
        irqchip/gic-v4.1: Add VPE INVALL callback
        irqchip/gic-v4.1: Add VPE eviction callback
        irqchip/gic-v4.1: Add VPE residency callback
        irqchip/gic-v4.1: Add mask/unmask doorbell callbacks
        irqchip/gic-v4.1: Plumb skeletal VPE irqchip
        irqchip/gic-v4.1: Implement the v4.1 flavour of VMOVP
        irqchip/gic-v4.1: Don't use the VPE proxy if RVPEID is set
        irqchip/gic-v4.1: Implement the v4.1 flavour of VMAPP
        irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation
        irqchip/gic-v3: Add GICv4.1 VPEID size discovery
        irqchip/gic-v3: Detect GICv4.1 supporting RVPEID
        irqchip/gic-v3-its: Fix get_vlpi_map() breakage with doorbells
        irqdomain: Fix a memory leak in irq_domain_push_irq()
        irqchip: Add NXP INTMUX interrupt multiplexer support
        dt-bindings: interrupt-controller: Add binding for NXP INTMUX interrupt multiplexer
        irqchip: Define EXYNOS_IRQ_COMBINER
        irqchip/meson-gpio: Add support for meson a1 SoCs
        ...
      3d3b44a6
    • Linus Torvalds's avatar
      Merge tag 'smp-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ab67f600
      Linus Torvalds authored
      Pull core SMP updates from Thomas Gleixner:
       "A small set of SMP core code changes:
      
         - Rework the smp function call core code to avoid the allocation of
           an additional cpumask
      
         - Remove the not longer required GFP argument from on_each_cpu_cond()
           and on_each_cpu_cond_mask() and fixup the callers"
      
      * tag 'smp-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        smp: Remove allocation mask from on_each_cpu_cond.*()
        smp: Add a smp_cond_func_t argument to smp_call_function_many()
        smp: Use smp_cond_func_t as type for the conditional function
      ab67f600
    • Linus Torvalds's avatar
      Merge tag 'timers-core-2020-01-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e279160f
      Linus Torvalds authored
      Pull timer updates from Thomas Gleixner:
       "The timekeeping and timers departement provides:
      
         - Time namespace support:
      
           If a container migrates from one host to another then it expects
           that clocks based on MONOTONIC and BOOTTIME are not subject to
           disruption. Due to different boot time and non-suspended runtime
           these clocks can differ significantly on two hosts, in the worst
           case time goes backwards which is a violation of the POSIX
           requirements.
      
           The time namespace addresses this problem. It allows to set offsets
           for clock MONOTONIC and BOOTTIME once after creation and before
           tasks are associated with the namespace. These offsets are taken
           into account by timers and timekeeping including the VDSO.
      
           Offsets for wall clock based clocks (REALTIME/TAI) are not provided
           by this mechanism. While in theory possible, the overhead and code
           complexity would be immense and not justified by the esoteric
           potential use cases which were discussed at Plumbers '18.
      
           The overhead for tasks in the root namespace (ie where host time
           offsets = 0) is in the noise and great effort was made to ensure
           that especially in the VDSO. If time namespace is disabled in the
           kernel configuration the code is compiled out.
      
           Kudos to Andrei Vagin and Dmitry Sofanov who implemented this
           feature and kept on for more than a year addressing review
           comments, finding better solutions. A pleasant experience.
      
         - Overhaul of the alarmtimer device dependency handling to ensure
           that the init/suspend/resume ordering is correct.
      
         - A new clocksource/event driver for Microchip PIT64
      
         - Suspend/resume support for the Hyper-V clocksource
      
         - The usual pile of fixes, updates and improvements mostly in the
           driver code"
      
      * tag 'timers-core-2020-01-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (71 commits)
        alarmtimer: Make alarmtimer_get_rtcdev() a stub when CONFIG_RTC_CLASS=n
        alarmtimer: Use wakeup source from alarmtimer platform device
        alarmtimer: Make alarmtimer platform device child of RTC device
        alarmtimer: Update alarmtimer_get_rtcdev() docs to reflect reality
        hrtimer: Add missing sparse annotation for __run_timer()
        lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres()
        MIPS: vdso: Define BUILD_VDSO32 when building a 32bit kernel
        clocksource/drivers/hyper-v: Set TSC clocksource as default w/ InvariantTSC
        clocksource/drivers/hyper-v: Untangle stimers and timesync from clocksources
        clocksource/drivers/timer-microchip-pit64b: Fix sparse warning
        clocksource/drivers/exynos_mct: Rename Exynos to lowercase
        clocksource/drivers/timer-ti-dm: Fix uninitialized pointer access
        clocksource/drivers/timer-ti-dm: Switch to platform_get_irq
        clocksource/drivers/timer-ti-dm: Convert to devm_platform_ioremap_resource
        clocksource/drivers/em_sti: Fix variable declaration in em_sti_probe
        clocksource/drivers/em_sti: Convert to devm_platform_ioremap_resource
        clocksource/drivers/bcm2835_timer: Fix memory leak of timer
        clocksource/drivers/cadence-ttc: Use ttc driver as platform driver
        clocksource/drivers/timer-microchip-pit64b: Add Microchip PIT64B support
        clocksource/drivers/hyper-v: Reserve PAGE_SIZE space for tsc page
        ...
      e279160f
    • Linus Torvalds's avatar
      Merge tag 'core-debugobjects-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 534b0a8b
      Linus Torvalds authored
      Pull debugobjects update from Thomas Gleixner:
       "A single commit for debug objects which fixes a pile of potential data
        races detected by KCSAN"
      
      * tag 'core-debugobjects-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        debugobjects: Fix various data races
      534b0a8b
    • Linus Torvalds's avatar
      Merge tag 'core-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b11c89a1
      Linus Torvalds authored
      Pull watchdog updates from Thomas Gleixner:
       "A set of watchdog/softlockup related improvements:
      
         - Enforce that the watchdog timestamp is always valid on boot. The
           original implementation caused a watchdog disabled gap of one
           second in the boot process due to truncation of the underlying
           sched clock.
      
           The sched clock is divided by 1e9 to convert nanoseconds to
           seconds. So for the first second of the boot process the result is
           0 which is at the same time the indicator to disable the watchdog.
      
           The trivial fix is to change the disabled indicator to ULONG_MAX.
      
         - Two cleanup patches removing unused and redundant code which got
           forgotten to be cleaned up in previous changes"
      
      * tag 'core-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        watchdog/softlockup: Enforce that timestamp is valid on boot
        watchdog/softlockup: Remove obsolete check of last reported task
        watchdog: Remove soft_lockup_hrtimer_cnt and related code
      b11c89a1
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2020-01-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a56c41e5
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "Two fixes for the generic VDSO code which missed 5.5:
      
         - Make the update to the coarse timekeeper unconditional.
      
           This is required because the coarse timekeeper interfaces in the
           VDSO do not depend on a VDSO capable clocksource. If the system
           does not have a VDSO capable clocksource and the update is
           depending on the VDSO capable clocksource, the coarse VDSO
           interfaces would operate on stale data forever.
      
         - Invert the logic of __arch_update_vdso_data() to avoid further head
           scratching.
      
           Tripped over this several times while analyzing the update problem
           above"
      
      * tag 'timers-urgent-2020-01-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lib/vdso: Update coarse timekeeper unconditionally
        lib/vdso: Make __arch_update_vdso_data() logic understandable
      a56c41e5
  2. 27 Jan, 2020 18 commits
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20200127' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · b1dba247
      Linus Torvalds authored
      Pull SELinux update from Paul Moore:
       "This is one of the bigger SELinux pull requests in recent years with
        28 patches. Everything is passing our test suite and the highlights
        are below:
      
         - Mark CONFIG_SECURITY_SELINUX_DISABLE as deprecated. We're some time
           away from actually attempting to remove this in the kernel, but the
           only distro we know that still uses it (Fedora) is working on
           moving away from this so we want to at least let people know we are
           planning to remove it.
      
         - Reorder the SELinux hooks to help prevent bad things when SELinux
           is disabled at runtime. The proper fix is to remove the
           CONFIG_SECURITY_SELINUX_DISABLE functionality (see above) and just
           take care of it at boot time (e.g. "selinux=0").
      
         - Add SELinux controls for the kernel lockdown functionality,
           introducing a new SELinux class/permissions: "lockdown { integrity
           confidentiality }".
      
         - Add a SELinux control for move_mount(2) that reuses the "file {
           mounton }" permission.
      
         - Improvements to the SELinux security label data store lookup
           functions to speed up translations between our internal label
           representations and the visible string labels (both directions).
      
         - Revisit a previous fix related to SELinux inode auditing and
           permission caching and do it correctly this time.
      
         - Fix the SELinux access decision cache to cleanup properly on error.
           In some extreme cases this could limit the cache size and result in
           a decrease in performance.
      
         - Enable SELinux per-file labeling for binderfs.
      
         - The SELinux initialized and disabled flags were wrapped with
           accessors to ensure they are accessed correctly.
      
         - Mark several key SELinux structures with __randomize_layout.
      
         - Changes to the LSM build configuration to only build
           security/lsm_audit.c when needed.
      
         - Changes to the SELinux build configuration to only build the IB
           object cache when CONFIG_SECURITY_INFINIBAND is enabled.
      
         - Move a number of single-caller functions into their callers.
      
         - Documentation fixes (/selinux -> /sys/fs/selinux).
      
         - A handful of cleanup patches that aren't worth mentioning on their
           own, the individual descriptions have plenty of detail"
      
      * tag 'selinux-pr-20200127' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux: (28 commits)
        selinux: fix regression introduced by move_mount(2) syscall
        selinux: do not allocate ancillary buffer on first load
        selinux: remove redundant allocation and helper functions
        selinux: remove redundant selinux_nlmsg_perm
        selinux: fix wrong buffer types in policydb.c
        selinux: reorder hooks to make runtime disable less broken
        selinux: treat atomic flags more carefully
        selinux: make default_noexec read-only after init
        selinux: move ibpkeys code under CONFIG_SECURITY_INFINIBAND.
        selinux: remove redundant msg_msg_alloc_security
        Documentation,selinux: fix references to old selinuxfs mount point
        selinux: deprecate disabling SELinux and runtime
        selinux: allow per-file labelling for binderfs
        selinuxfs: use scnprintf to get real length for inode
        selinux: remove set but not used variable 'sidtab'
        selinux: ensure the policy has been loaded before reading the sidtab stats
        selinux: ensure we cleanup the internal AVC counters on error in avc_update()
        selinux: randomize layout of key structures
        selinux: clean up selinux_enabled/disabled/enforcing_boot
        selinux: remove unnecessary selinux cred request
        ...
      b1dba247
    • Linus Torvalds's avatar
      Merge tag 'audit-pr-20200127' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit · 07e309a9
      Linus Torvalds authored
      Pull audit update from Paul Moore:
       "One small audit patch for the Linux v5.6 merge window, and
        unsurprisingly it passes our test suite with flying colors"
      
      * tag 'audit-pr-20200127' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
        audit: Add __rcu annotation to RCU pointer
      07e309a9
    • Linus Torvalds's avatar
      Merge branch 'for-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 03aa8c8c
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - cgroup2 interface for hugetlb controller. I think this was the last
         remaining bit which was missing from cgroup2
      
       - fixes for race and a spurious warning in threaded cgroup handling
      
       - other minor changes
      
      * 'for-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        iocost: Fix iocost_monitor.py due to helper type mismatch
        cgroup: Prevent double killing of css when enabling threaded cgroup
        cgroup: fix function name in comment
        mm: hugetlb controller for cgroups v2
      03aa8c8c
    • Linus Torvalds's avatar
      Merge branch 'for-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 16d06120
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
       "Just a couple tracepoint patches"
      
      * 'for-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: remove workqueue_work event class
        workqueue: add worker function to workqueue_execute_end tracepoint
      16d06120
    • Linus Torvalds's avatar
      Merge tag 'ioremap-5.6' of git://git.infradead.org/users/hch/ioremap · 6a1000bd
      Linus Torvalds authored
      Pull ioremap updates from Christoph Hellwig:
       "Remove the ioremap_nocache API (plus wrappers) that are always
        identical to ioremap"
      
      * tag 'ioremap-5.6' of git://git.infradead.org/users/hch/ioremap:
        remove ioremap_nocache and devm_ioremap_nocache
        MIPS: define ioremap_nocache to ioremap
      6a1000bd
    • Linus Torvalds's avatar
      Merge tag 'for-5.6/libata-2020-01-27' of git://git.kernel.dk/linux-block · 9dd70e28
      Linus Torvalds authored
      Pull libata updates from Jens Axboe:
       "As usual pretty quiet, mostly trivial fixes (or dead code removal),
        outside of various fixes for ahci_bcrm"
      
      * tag 'for-5.6/libata-2020-01-27' of git://git.kernel.dk/linux-block:
        ata/acard_ahci: remove unused variable n_elem
        ata: pata_macio: fix comparing pointer to 0
        ata: ahci_brcm: BCM7216 reset is self de-asserting
        ata: ahci_brcm: Perform reset after obtaining resources
        ata: brcm: fix reset controller API usage
        ata: brcm: mark PM functions as __maybe_unused
        ata: ahci_brcm: Support BCM7216 reset controller name
        dt-bindings: ata: Document BCM7216 AHCI controller compatible
        ata: ahci_brcm: Add a shutdown callback
        ata: ahci_brcm: Manage reset line during suspend/resume
      9dd70e28
    • Linus Torvalds's avatar
      Merge tag 'for-5.6/drivers-2020-01-27' of git://git.kernel.dk/linux-block · 22a8f39c
      Linus Torvalds authored
      Pull block driver updates from Jens Axboe:
       "Like the core side, not a lot of changes here, just two main items:
      
         - Series of patches (via Coly) with fixes for bcache (Coly,
           Christoph)
      
         - MD pull request from Song"
      
      * tag 'for-5.6/drivers-2020-01-27' of git://git.kernel.dk/linux-block: (31 commits)
        bcache: reap from tail of c->btree_cache in bch_mca_scan()
        bcache: reap c->btree_cache_freeable from the tail in bch_mca_scan()
        bcache: remove member accessed from struct btree
        bcache: print written and keys in trace_bcache_btree_write
        bcache: avoid unnecessary btree nodes flushing in btree_flush_write()
        bcache: add code comments for state->pool in __btree_sort()
        lib: crc64: include <linux/crc64.h> for 'crc64_be'
        bcache: use read_cache_page_gfp to read the superblock
        bcache: store a pointer to the on-disk sb in the cache and cached_dev structures
        bcache: return a pointer to the on-disk sb from read_super
        bcache: transfer the sb_page reference to register_{bdev,cache}
        bcache: fix use-after-free in register_bcache()
        bcache: properly initialize 'path' and 'err' in register_bcache()
        bcache: rework error unwinding in register_bcache
        bcache: use a separate data structure for the on-disk super block
        bcache: cached_dev_free needs to put the sb page
        md/raid1: introduce wait_for_serialization
        md/raid1: use bucket based mechanism for IO serialization
        md: introduce a new struct for IO serialization
        md: don't destroy serial_info_pool if serialize_policy is true
        ...
      22a8f39c
    • Linus Torvalds's avatar
      Merge tag 'for-5.6/block-2020-01-27' of git://git.kernel.dk/linux-block · 48b4b4ff
      Linus Torvalds authored
      Pull core block updates from Jens Axboe:
       "This may be the most quiet round we've had in years. I'm not
        complaining. Really not a lot to detail here, outside of spelling and
        documentation improvements/fixes, we have:
      
         - Allow t10-pi to be modular (Herbert)
      
         - Remove dead code in bfq (Alex)
      
         - Mark zone management requests with REQ_SYNC (Chaitanya)
      
         - BFQ division improvement (Wen)
      
         - Small series improving plugging (Pavel)"
      
      * tag 'for-5.6/block-2020-01-27' of git://git.kernel.dk/linux-block:
        partitions/ldm: fix spelling mistake "to" -> "too"
        block, bfq: improve arithmetic division in bfq_delta()
        block/bfq: remove unused bfq_class_rt which never used
        block: mark zone-mgmt bios with REQ_SYNC
        blk-mq: Document functions for sending request
        block: Allow t10-pi to be modular
        blk-mq: optimise blk_mq_flush_plug_list()
        list: introduce list_for_each_continue()
        blk-mq: optimise rq sort function
      48b4b4ff
    • Linus Torvalds's avatar
      Merge tag 'pnp-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 34dabd81
      Linus Torvalds authored
      Pull PNP updates from Rafael Wysocki:
       "Get rid of unused variable and function (yu kuai)"
      
      * tag 'pnp-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PNP: isapnp: remove defined but not used function 'isapnp_checksum'
        PNP: isapnp: remove set but not used variable 'checksum'
      34dabd81
    • Linus Torvalds's avatar
      Merge tag 'devprop-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 85c009e8
      Linus Torvalds authored
      Pull device properties framework updates from Rafael Wysocki:
       "Add support for reference properties in sofrware nodes (Dmitry
        Torokhov) and a basic test for property entries along with fixes on
        top of it (Dmitry Torokhov, Qian Cai, Alan Maguire)"
      
      * tag 'devprop-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        software node: introduce CONFIG_KUNIT_DRIVER_PE_TEST
        usb: dwc3: use proper initializers for property entries
        drivers/base/test: fix global-out-of-bounds error
        software node: add basic tests for property entries
        software node: remove separate handling of references
        platform/x86: intel_cht_int33fe: use inline reference properties
        software node: implement reference properties
        software node: allow embedding of small arrays into property_entry
        software node: replace is_array with is_inline
      85c009e8
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 55816dc1
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These update the ACPICA code in the kernel to the most recent upstream
        revision (20200110), add new hardware support to a handful of ACPI
        drivers, make the ACPI fan driver expose power states information for
        fans, add some more quirks, fix bugs and clean up assorted things.
      
        Specifics:
      
         - Update the ACPICA code in the kernel to upstream revision 20200110
           including:
            - Update of copyright notices to 2020 (Bob Moore).
            - Dispatcher fix to always generate buffer objects for the ASL
              create_field() operator (Maximilian Luz).
            - Debugger cleanup (Colin Ian King).
            - Disassembler change to create buffer fields in
              ACPI_PARSE_LOAD_PASS1 (Erik Kaneda).
            - UNIX line ending support for non-windows builds in acpisrc (Erik
              Kaneda).
      
         - Update the list of ACPICA maintainers (Rafael Wysocki).
      
         - Add Intel Tiger Lake ACPI device IDs to the ACPI DPTF, ACPI fan,
           int340x_thermal and intel-hid drivers (Gayatri Kammela).
      
         - Make the ACPI fan driver create additional sysfs attributes to
           expose power states information for fans (Srinivas Pandruvada).
      
         - Fix up the ACPI battery driver to deal with unexpected battery
           capacity information in a better way (Hans de Goede).
      
         - Add ACPI backlight quirks for Lenovo E41-25/45 and MSI MS-7721
           boards (Aaron Ma, Hans de Goede).
      
         - Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch to
           the ACPI button driver (Jason Ekstrand).
      
         - Drop TIMER_DEFERRABLE from the GHES polling mode timer function
           flags to make it run precisely at the configured time (Bhaskar
           Upadhaya).
      
         - Fix race condition related to the reference counting of query
           handlers in the ACPI EC driver (Rafael Wysocki).
      
         - Fix ACPI tools build issue (Zhengyuan Liu).
      
         - Replace dma_request_slave_channel() with dma_request_chan() in the
           firmware guide documentation for ACPI (Peter Ujfalusi).
      
         - Fix typo in a comment and clean up function parameter data type
           inconsistencies (Kacper Piwiński, Tian Tao)"
      
      * tag 'acpi-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (25 commits)
        ACPICA: Update version to 20200110
        ACPICA: All acpica: Update copyrights to 2020 Including tool signons.
        apei/ghes: Do not delay GHES polling
        ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch
        ACPI: PPTT: Consistently use unsigned int as parameter type
        ACPI: EC: Reference count query handlers under lock
        ACPICA: Update the list of maintainers
        ACPICA: Update version to 20191213
        ACPICA: Dispatcher: always generate buffer objects for ASL create_field() operator
        ACPICA: acpisrc: add unix line ending support for non-windows build
        ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1
        ACPICA: debugger: fix spelling mistake "adress" -> "address"
        ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards
        docs: firmware-guide: ACPI: Replace dma_request_slave_channel() with dma_request_chan()
        thermal: int340x_thermal: Add Tiger Lake ACPI device IDs
        platform/x86: intel-hid: Add Tiger Lake ACPI device ID
        ACPI: fan: Add Tiger Lake ACPI device ID
        ACPI: DPTF: Add Tiger Lake ACPI device IDs
        ACPI: fan: Expose fan performance state information
        tools/power/acpi: fix compilation error
        ...
      55816dc1
    • Linus Torvalds's avatar
      Merge tag 'pm-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 6d277aca
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These add ACPI support to the intel_idle driver along with an admin
        guide document for it, add support for CPR (Core Power Reduction) to
        the AVS (Adaptive Voltage Scaling) subsystem, add new hardware support
        in a few places, add some new sysfs attributes, debugfs files and
        tracepoints, fix bugs and clean up a bunch of things all over.
      
        Specifics:
      
         - Update the ACPI processor driver in order to export
           acpi_processor_evaluate_cst() to the code outside of it, add ACPI
           support to the intel_idle driver based on that and clean up that
           driver somewhat (Rafael Wysocki).
      
         - Add an admin guide document for the intel_idle driver (Rafael
           Wysocki).
      
         - Clean up cpuidle core and drivers, enable compilation testing for
           some of them (Benjamin Gaignard, Krzysztof Kozlowski, Rafael
           Wysocki, Yangtao Li).
      
         - Fix reference counting of OPP (operating performance points) table
           structures (Viresh Kumar).
      
         - Add support for CPR (Core Power Reduction) to the AVS (Adaptive
           Voltage Scaling) subsystem (Niklas Cassel, Colin Ian King,
           YueHaibing).
      
         - Add support for TigerLake Mobile and JasperLake to the Intel RAPL
           power capping driver (Zhang Rui).
      
         - Update cpufreq drivers:
            - Add i.MX8MP support to imx-cpufreq-dt (Anson Huang).
            - Fix usage of a macro in loongson2_cpufreq (Alexandre Oliva).
            - Fix cpufreq policy reference counting issues in s3c and
              brcmstb-avs (chenqiwu).
            - Fix ACPI table reference counting issue and HiSilicon quirk
              handling in the CPPC driver (Hanjun Guo).
            - Clean up spelling mistake in intel_pstate (Harry Pan).
            - Convert the kirkwood and tegra186 drivers to using
              devm_platform_ioremap_resource() (Yangtao Li).
      
         - Update devfreq core:
            - Add 'name' sysfs attribute for devfreq devices (Chanwoo Choi).
            - Clean up the handing of transition statistics and allow them to
              be reset by writing 0 to the 'trans_stat' devfreq device
              attribute in sysfs (Kamil Konieczny).
            - Add 'devfreq_summary' to debugfs (Chanwoo Choi).
            - Clean up kerneldoc comments and Kconfig indentation (Krzysztof
              Kozlowski, Randy Dunlap).
      
         - Update devfreq drivers:
            - Add dynamic scaling for the imx8m DDR controller and clean up
              imx8m-ddrc (Leonard Crestez, YueHaibing).
            - Fix DT node reference counting and nitialization error code path
              in rk3399_dmc and add COMPILE_TEST and HAVE_ARM_SMCCC dependency
              for it (Chanwoo Choi, Yangtao Li).
            - Fix DT node reference counting in rockchip-dfi and make it use
              devm_platform_ioremap_resource() (Yangtao Li).
            - Fix excessive stack usage in exynos-ppmu (Arnd Bergmann).
            - Fix initialization error code paths in exynos-bus (Yangtao Li).
            - Clean up exynos-bus and exynos somewhat (Artur Świgoń, Krzysztof
              Kozlowski).
      
         - Add tracepoints for tracking usage_count updates unrelated to
           status changes in PM-runtime (Michał Mirosław).
      
         - Add sysfs attribute to control the "sync on suspend" behavior
           during system-wide suspend (Jonas Meurer).
      
         - Switch system-wide suspend tests over to 64-bit time (Alexandre
           Belloni).
      
         - Make wakeup sources statistics in debugfs cover deleted ones which
           used to be the case some time ago (zhuguangqing).
      
         - Clean up computations carried out during hibernation, update
           messages related to hibernation and fix a spelling mistake in one
           of them (Wen Yang, Luigi Semenzato, Colin Ian King).
      
         - Add mailmap entry for maintainer e-mail address that has not been
           functional for several years (Rafael Wysocki)"
      
      * tag 'pm-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (83 commits)
        cpufreq: loongson2_cpufreq: adjust cpufreq uses of LOONGSON_CHIPCFG
        intel_idle: Clean up irtl_2_usec()
        intel_idle: Move 3 functions closer to their callers
        intel_idle: Annotate initialization code and data structures
        intel_idle: Move and clean up intel_idle_cpuidle_devices_uninit()
        intel_idle: Rearrange intel_idle_cpuidle_driver_init()
        intel_idle: Clean up NULL pointer check in intel_idle_init()
        intel_idle: Fold intel_idle_probe() into intel_idle_init()
        intel_idle: Eliminate __setup_broadcast_timer()
        cpuidle: fix cpuidle_find_deepest_state() kerneldoc warnings
        cpuidle: sysfs: fix warnings when compiling with W=1
        cpuidle: coupled: fix warnings when compiling with W=1
        cpufreq: brcmstb-avs: fix imbalance of cpufreq policy refcount
        PM: suspend: Add sysfs attribute to control the "sync on suspend" behavior
        PM / devfreq: Add debugfs support with devfreq_summary file
        Documentation: admin-guide: PM: Add intel_idle document
        cpuidle: arm: Enable compile testing for some of drivers
        PM-runtime: add tracepoints for usage_count changes
        cpufreq: intel_pstate: fix spelling mistake: "Whethet" -> "Whether"
        PM: hibernate: fix spelling mistake "shapshot" -> "snapshot"
        ...
      6d277aca
    • Linus Torvalds's avatar
      Merge tag 'regulator-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · aae1464f
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "Hardly anything going on in the core this time around with the
        regulator API and pretty quiet on the driver front:
      
         - An API for comparing regulators, useful for devices that need to
           check if supply voltages exactly match rather than just nominally
           match.
      
         - Conversion of several DT bindings to YAML format.
      
         - Conversion of I2C drivers to probe_new().
      
         - New drivers for Monolithic MPQ7920 and MP8859, and Rohm BD71828"
      
      * tag 'regulator-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (34 commits)
        dt-bindings: regulator: add document bindings for mpq7920
        regulator: core: Fix exported symbols to the exported GPL version
        regulator: mpq7920: Fix incorrect defines
        regulator: vqmmc-ipq4019: Fix platform_no_drv_owner.cocci warnings
        regulator: vctrl-regulator: Avoid deadlock getting and setting the voltage
        regulator fix for "regulator: core: Add regulator_is_equal() helper"
        regulator: core: Add regulator_is_equal() helper
        regulator: mpq7920: Convert to use .probe_new
        regulator: mpq7920: Remove unneeded fields from struct mpq7920_regulator_info
        regulator: vqmmc-ipq4019: Trivial clean up
        regulator: vqmmc-ipq4019: Remove ipq4019_regulator_remove
        regulator: bindings: Drop document bindings for mpq7920
        dt-bindings: Drop entry for Monolithic Power System, MPS
        regulator: bd718x7: Simplify the code by removing struct bd718xx_pmic_inits
        regulator: add IPQ4019 SDHCI VQMMC LDO driver
        regulator: Convert i2c drivers to use .probe_new
        regulator: mpq7920: Check the correct variable in mpq7920_regulator_register()
        regulator: mpq7920: Fix Woverflow warning on conversion
        regulator: mp8859: tidy up white space in probe
        regulator: mpq7920: add mpq7920 regulator driver
        ...
      aae1464f
    • Linus Torvalds's avatar
      Merge tag 'spi-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 1e1ab4ba
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "Not much going on in the core for SPI this time but a reasonable
        amount of change in the drivers:
      
         - Removal of dmal_request_slave_channel() from Peter Ujfalusi.
      
         - More conversions of drivers to GPIO descriptors from Linus Walleij.
      
         - A big rework of the sh-msiof driver from Geert Uytterhoeven moving
           it over to the generic native chipselect support.
      
         - DMA support for the uniphier driver from Kunihiko Hayashi.
      
         - New driver support for HiSilcon v3xx SPI NOR controllers from John
           Garry"
      
      * tag 'spi-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (52 commits)
        dt-binding: spi: add NPCM PSPI reset binding
        spi: pxa2xx: Avoid touching SSCR0_SSE on MMP2
        spi: spi-fsl-qspi: Ensure width is respected in spi-mem operations
        spi: npcm-pspi: modify reset support
        spi: npcm-pspi: improve spi transfer performance
        spi: spi-ti-qspi: fix warning
        spi: npcm-pspi: fix 16 bit send and receive support
        spi: pxa2xx: Add support for Intel Comet Lake PCH-V
        spi: fsl: simplify error path in of_fsl_spi_probe()
        spi: fsl-lpspi: fix only one cs-gpio working
        spi: spi-ti-qspi: optimize byte-transfers
        spi: spi-ti-qspi: support large flash devices
        spi: spi-qcom-qspi: Use device managed memory for clk_bulk_data
        MAINTAINERS: Add a maintainer for the HiSilicon v3xx SFC driver
        spi: Add HiSilicon v3xx SPI NOR flash controller driver
        dt-bindings: spi_atmel: add microchip,sam9x60-spi
        spi: bcm2835: Raise maximum number of slaves to 4
        spi: sh-msiof: Do not redefine STR while compile testing
        spi: rspi: Add support for GPIO chip selects
        spi: rspi: Add support for multiple native chip selects
        ...
      1e1ab4ba
    • Linus Torvalds's avatar
      Merge tag 'regmap-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · e83a0ed2
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "This is quite a busy release for a subsystem that's usually very
        quiet, though still a small set of updates in the grand scheme of
        things:
      
         - A fix for writes to non-incrementing registers.
      
         - An iopoll() style helper for use with atomic safe regmaps, making
           it easier to transition from raw memory mapped I/O.
      
         - Some constification"
      
      * tag 'regmap-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: fix writes to non incrementing registers
        regmap: add iopoll-like atomic polling macro
        regmap-i2c: constify regmap_bus structures
      e83a0ed2
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-5.6-rc1' of git://git.infradead.org/users/vkoul/slave-dma · a5b871c9
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
       "This time we have a bunch of core changes to support dynamic channels,
        hotplug of controllers, new apis for metadata ops etc along with new
        drivers for Intel data accelerators, TI K3 UDMA, PLX DMA engine and
        hisilicon Kunpeng DMA engine. Also usual assorted updates to drivers.
      
        Core:
         - Support for dynamic channels
         - Removal of various slave wrappers
         - Make few slave request APIs as private to dmaengine
         - Symlinks between channels and slaves
         - Support for hotplug of controllers
         - Support for metadata_ops for dma_async_tx_descriptor
         - Reporting DMA cached data amount
         - Virtual dma channel locking updates
      
        New drivers/device/feature support support:
         - Driver for Intel data accelerators
         - Driver for TI K3 UDMA
         - Driver for PLX DMA engine
         - Driver for hisilicon Kunpeng DMA engine
         - Support for eDMA support for QorIQ LS1028A in fsl edma driver
         - Support for cyclic dma in sun4i driver
         - Support for X1830 in JZ4780 driver"
      
      * tag 'dmaengine-5.6-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (62 commits)
        dmaengine: Create symlinks between DMA channels and slaves
        dmaengine: hisilicon: Add Kunpeng DMA engine support
        dmaengine: idxd: add char driver to expose submission portal to userland
        dmaengine: idxd: connect idxd to dmaengine subsystem
        dmaengine: idxd: add descriptor manipulation routines
        dmaengine: idxd: add sysfs ABI for idxd driver
        dmaengine: idxd: add configuration component of driver
        dmaengine: idxd: Init and probe for Intel data accelerators
        dmaengine: add support to dynamic register/unregister of channels
        dmaengine: break out channel registration
        x86/asm: add iosubmit_cmds512() based on MOVDIR64B CPU instruction
        dmaengine: ti: k3-udma: fix spelling mistake "limted" -> "limited"
        dmaengine: s3c24xx-dma: fix spelling mistake "to" -> "too"
        dmaengine: Move dma_get_{,any_}slave_channel() to private dmaengine.h
        dmaengine: Remove dma_request_slave_channel_compat() wrapper
        dmaengine: Remove dma_device_satisfies_mask() wrapper
        dt-bindings: fsl-imx-sdma: Add i.MX8MM/i.MX8MN/i.MX8MP compatible string
        dmaengine: zynqmp_dma: fix burst length configuration
        dmaengine: sun4i: Add support for cyclic requests with dedicated DMA
        dmaengine: fsl-qdma: fix duplicated argument to &&
        ...
      a5b871c9
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching · 715d1285
      Linus Torvalds authored
      Pull livepatching updates from Jiri Kosina:
       "Fixes for selftests and samples for 'shadow variables' livepatching
        feature, from Petr Mladek"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
        livepatch: Handle allocation failure in the sample of shadow variable API
        livepatch/samples/selftest: Use klp_shadow_alloc() API correctly
        livepatch/selftest: Clean up shadow variable names and type
        livepatch/sample: Use the right type for the leaking data pointer
      715d1285
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 12fb2b99
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
       "This time it's surprisingly quiet (probably due to the christmas
        break):
      
         - Logitech HID++ protocol improvements from Mazin Rezk, Pedro
           Vanzella and Adrian Freund
      
         - support for hidraw uniq ioctl from Marcel Holtmann"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
        HID: logitech-hidpp: avoid duplicate error handling code in 'hidpp_probe()'
        hid-logitech-hidpp: read battery voltage from newer devices
        HID: logitech: Add MX Master 3 Mouse
        HID: logitech-hidpp: Support WirelessDeviceStatus connect events
        HID: logitech-hidpp: Support translations from short to long reports
        HID: hidraw: add support uniq ioctl
      12fb2b99