1. 27 Dec, 2018 8 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e57d9f63
      Linus Torvalds authored
      Pull x86 mm updates from Ingo Molnar:
       "The main changes in this cycle were:
         - Update and clean up x86 fault handling, by Andy Lutomirski.
         - Drop usage of __flush_tlb_all() in kernel_physical_mapping_init()
           and related fallout, by Dan Williams.
         - CPA cleanups and reorganization by Peter Zijlstra: simplify the
           flow and remove a few warts.
         - Other misc cleanups"
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (29 commits)
        x86/mm/dump_pagetables: Use DEFINE_SHOW_ATTRIBUTE()
        x86/mm/cpa: Rename @addrinarray to @numpages
        x86/mm/cpa: Better use CLFLUSHOPT
        x86/mm/cpa: Fold cpa_flush_range() and cpa_flush_array() into a single cpa_flush() function
        x86/mm/cpa: Make cpa_data::numpages invariant
        x86/mm/cpa: Optimize cpa_flush_array() TLB invalidation
        x86/mm/cpa: Simplify the code after making cpa->vaddr invariant
        x86/mm/cpa: Make cpa_data::vaddr invariant
        x86/mm/cpa: Add __cpa_addr() helper
        x86/mm/cpa: Add ARRAY and PAGES_ARRAY selftests
        x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init()
        x86/mm: Validate kernel_physical_mapping_init() PTE population
        generic/pgtable: Introduce set_pte_safe()
        generic/pgtable: Introduce {p4d,pgd}_same()
        generic/pgtable: Make {pmd, pud}_same() unconditionally available
        x86/fault: Clean up the page fault oops decoder a bit
        x86/fault: Decode page fault OOPSes better
        x86/vsyscall/64: Use X86_PF constants in the simulated #PF error code
        x86/oops: Show the correct CS value in show_regs()
        x86/fault: Don't try to recover from an implicit supervisor access
    • Linus Torvalds's avatar
      Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d6e867a6
      Linus Torvalds authored
      Pull x86 fpu updates from Ingo Molnar:
       "Misc preparatory changes for an upcoming FPU optimization that will
        delay the loading of FPU registers to return-to-userspace"
      * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/fpu: Don't export __kernel_fpu_{begin,end}()
        x86/fpu: Update comment for __raw_xsave_addr()
        x86/fpu: Add might_fault() to user_insn()
        x86/pkeys: Make init_pkru_value static
        x86/thread_info: Remove _TIF_ALLWORK_MASK
        x86/process/32: Remove asm/math_emu.h include
        x86/fpu: Use unsigned long long shift in xfeature_uncompacted_offset()
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · db2ab474
      Linus Torvalds authored
      Pull x86 cpu updates from Ingo Molnar:
       "Misc changes:
         - Fix nr_cpus= boot option interaction bug with logical package
         - Clean up UMIP detection messages
         - Add WBNOINVD instruction detection
         - Remove the unused get_scattered_cpuid_leaf() function"
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/topology: Use total_cpus for max logical packages calculation
        x86/umip: Make the UMIP activated message generic
        x86/umip: Print UMIP line only once
        x86/cpufeatures: Add WBNOINVD feature definition
        x86/cpufeatures: Remove get_scattered_cpuid_leaf()
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 312a4661
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Misc cleanups"
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kprobes: Remove trampoline_handler() prototype
        x86/kernel: Fix more -Wmissing-prototypes warnings
        x86: Fix various typos in comments
        x86/headers: Fix -Wmissing-prototypes warning
        x86/process: Avoid unnecessary NULL check in get_wchan()
        x86/traps: Complete prototype declarations
        x86/mce: Fix -Wmissing-prototypes warnings
        x86/gart: Rewrite early_gart_iommu_check() comment
    • Linus Torvalds's avatar
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6e54df00
      Linus Torvalds authored
      Pull x86 build updates from Ingo Molnar:
       - Resolve LLVM build bug by removing redundant GNU specific flag
       - Remove obsolete -funit-at-a-time and -fno-unit-at-a-time use from x86
         PowerPC and UM.
         The UML change was seen and acked by UML maintainer Richard
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/um/vdso: Drop implicit common-page-size linker flag
        x86, powerpc: Remove -funit-at-a-time compiler option entirely
        x86/um: Remove -fno-unit-at-a-time workaround for pre-4.0 GCC
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9a126e78
      Linus Torvalds authored
      Pull x86 boot updates from Ingo Molnar:
       "Two cleanups"
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Add missing va_end() to die()
        x86/boot: Simplify the detect_memory*() control flow
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 38fabca1
      Linus Torvalds authored
      Pull x86 asm updates from Ingo Molnar:
       "Two changes:
         - Remove (some) remnants of the vDSO's fake section table mechanism
           that were left behind when the vDSO build process reverted to using
           "objdump -S" to strip the userspace image.
         - Remove hardcoded POPCNT mnemonics now that the minimum binutils
           version supports the symbolic form"
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/vdso: Remove a stale/misleading comment from the linker script
        x86/vdso: Remove obsolete "fake section table" reservation
        x86: Use POPCNT mnemonics in arch_hweight.h
    • Linus Torvalds's avatar
      Merge branch 'x86-amd-nb-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8465625a
      Linus Torvalds authored
      Pull x86 AMD northbridge updates from Ingo Molnar:
       "Update DF/SMN access and k10temp for AMD F17h M30h, by Brian Woods:
         'Updates the data fabric/system management network code needed to get
          k10temp working for M30h. Since there are now processors which have
          multiple roots per DF/SMN interface, there needs to some logic which
          skips N-1 root complexes per DF/SMN interface. This is because the
          root complexes per interface are redundant (as far as DF/SMN goes).
          These changes shouldn't effect past processors and, for F17h M0Xh,
          the mappings stay the same.'
        The hwmon changes were seen and acked by hwmon maintainer Guenter Roeck"
      * 'x86-amd-nb-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        hwmon/k10temp: Add support for AMD family 17h, model 30h CPUs
        x86/amd_nb: Add PCI device IDs for family 17h, model 30h
        x86/amd_nb: Add support for newer PCI topologies
        hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs
  2. 26 Dec, 2018 20 commits
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 17bf423a
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The main changes in this cycle were:
         - Introduce "Energy Aware Scheduling" - by Quentin Perret.
           This is a coherent topology description of CPUs in cooperation with
           the PM subsystem, with the goal to schedule more energy-efficiently
           on asymetric SMP platform - such as waking up tasks to the more
           energy-efficient CPUs first, as long as the system isn't
           For details of the design, see:
         - Misc cleanups and smaller enhancements"
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
        sched/fair: Select an energy-efficient CPU on task wake-up
        sched/fair: Introduce an energy estimation helper function
        sched/fair: Add over-utilization/tipping point indicator
        sched/fair: Clean-up update_sg_lb_stats parameters
        sched/toplogy: Introduce the 'sched_energy_present' static key
        sched/topology: Make Energy Aware Scheduling depend on schedutil
        sched/topology: Disable EAS on inappropriate platforms
        sched/topology: Add lowest CPU asymmetry sched_domain level pointer
        sched/topology: Reference the Energy Model of CPUs when available
        PM: Introduce an Energy Model management framework
        sched/cpufreq: Prepare schedutil for Energy Aware Scheduling
        sched/topology: Relocate arch_scale_cpu_capacity() to the internal header
        sched/core: Remove unnecessary unlikely() in push_*_task()
        sched/topology: Remove the ::smt_gain field from 'struct sched_domain'
        sched: Fix various typos in comments
        sched/core: Clean up the #ifdef block in add_nr_running()
        sched/fair: Make some variables static
        sched/core: Create task_has_idle_policy() helper
        sched/fair: Add lsub_positive() and use it consistently
        sched/fair: Mask UTIL_AVG_UNCHANGED usages
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 116b081c
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "The main changes in this cycle on the kernel side:
         - rework kprobes blacklist handling (Masami Hiramatsu)
         - misc cleanups
        on the tooling side these areas were the main focus:
         - 'perf trace'     enhancements (Arnaldo Carvalho de Melo)
         - 'perf bench'     enhancements (Davidlohr Bueso)
         - 'perf record'    enhancements (Alexey Budankov)
         - 'perf annotate'  enhancements (Jin Yao)
         - 'perf top'       enhancements (Jiri Olsa)
         - Intel hw tracing enhancements (Adrian Hunter)
         - ARM hw tracing   enhancements (Leo Yan, Mathieu Poirier)
         - ... plus lots of other enhancements, cleanups and fixes"
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (171 commits)
        tools uapi asm: Update asm-generic/unistd.h copy
        perf symbols: Relax checks on perf-PID.map ownership
        perf trace: Wire up the fadvise 'advice' table generator
        perf beauty: Add generator for fadvise64's 'advice' arg constants
        tools headers uapi: Grab a copy of fadvise.h
        perf beauty mmap: Print mmap's 'offset' arg in hexadecimal
        perf beauty mmap: Print PROT_READ before PROT_EXEC to match strace output
        perf trace beauty: Beautify arch_prctl()'s arguments
        perf trace: When showing string prefixes show prefix + ??? for unknown entries
        perf trace: Move strarrays to beauty.h for further reuse
        perf beauty: Wire up the x86_arch prctl code table generator
        perf beauty: Add a string table generator for x86's 'arch_prctl' codes
        tools include arch: Grab a copy of x86's prctl.h
        perf trace: Show NULL when syscall pointer args are 0
        perf trace: Enclose the errno strings with ()
        perf augmented_raw_syscalls: Copy 'access' arg as well
        perf trace: Add alignment spaces after the closing parens
        perf trace beauty: Print O_RDONLY when (flags & O_ACCMODE) == 0
        perf trace: Allow asking for not suppressing common string prefixes
        perf trace: Add a prefix member to the strarray class
    • Linus Torvalds's avatar
      Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1eefdec1
      Linus Torvalds authored
      Pull locking updates from Ingo Molnar:
       "The main change in this cycle are initial preparatory bits of dynamic
        lockdep keys support from Bart Van Assche.
        There are also misc changes, a comment cleanup and a data structure
      * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/fair: Clean up comment in nohz_idle_balance()
        locking/lockdep: Stop using RCU primitives to access 'all_lock_classes'
        locking/lockdep: Make concurrent lockdep_reset_lock() calls safe
        locking/lockdep: Remove a superfluous INIT_LIST_HEAD() statement
        locking/lockdep: Introduce lock_class_cache_is_registered()
        locking/lockdep: Inline __lockdep_init_map()
        locking/lockdep: Declare local symbols static
        tools/lib/lockdep/tests: Test the lockdep_reset_lock() implementation
        tools/lib/lockdep: Add dummy print_irqtrace_events() implementation
        tools/lib/lockdep: Rename "trywlock" into "trywrlock"
        tools/lib/lockdep/tests: Run lockdep tests a second time under Valgrind
        tools/lib/lockdep/tests: Improve testing accuracy
        tools/lib/lockdep/tests: Fix shellcheck warnings
        tools/lib/lockdep/tests: Display compiler warning and error messages
        locking/lockdep: Remove ::version from lock_class structure
    • Linus Torvalds's avatar
      Merge branch 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 684019dd
      Linus Torvalds authored
      Pull EFI updates from Ingo Molnar:
       "The main changes in this cycle were:
         - Allocate the E820 buffer before doing the
           GetMemoryMap/ExitBootServices dance so we don't run out of space
         - Clear EFI boot services mappings when freeing the memory
         - Harden efivars against callers that invoke it on non-EFI boots
         - Reduce the number of memblock reservations resulting from extensive
           use of the new efi_mem_reserve_persistent() API
         - Other assorted fixes and cleanups"
      * 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/efi: Don't unmap EFI boot services code/data regions for EFI_OLD_MEMMAP and EFI_MIXED_MODE
        efi: Reduce the amount of memblock reservations for persistent allocations
        efi: Permit multiple entries in persistent memreserve data structure
        efi/libstub: Disable some warnings for x86{,_64}
        x86/efi: Move efi_<reserve/free>_boot_services() to arch/x86
        x86/efi: Unmap EFI boot services code/data regions from efi_pgd
        x86/mm/pageattr: Introduce helper function to unmap EFI boot services
        efi/fdt: Simplify the get_fdt() flow
        efi/fdt: Indentation fix
        firmware/efi: Add NULL pointer checks in efivars API functions
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 792bf4d8
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "The biggest RCU changes in this cycle were:
         - Convert RCU's BUG_ON() and similar calls to WARN_ON() and similar.
         - Replace calls of RCU-bh and RCU-sched update-side functions to
           their vanilla RCU counterparts. This series is a step towards
           complete removal of the RCU-bh and RCU-sched update-side functions.
           ( Note that some of these conversions are going upstream via their
             respective maintainers. )
         - Documentation updates, including a number of flavor-consolidation
           updates from Joel Fernandes.
         - Miscellaneous fixes.
         - Automate generation of the initrd filesystem used for rcutorture
         - Convert spin_is_locked() assertions to instead use lockdep.
           ( Note that some of these conversions are going upstream via their
             respective maintainers. )
         - SRCU updates, especially including a fix from Dennis Krein for a
           bag-on-head-class bug.
         - RCU torture-test updates"
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (112 commits)
        rcutorture: Don't do busted forward-progress testing
        rcutorture: Use 100ms buckets for forward-progress callback histograms
        rcutorture: Recover from OOM during forward-progress tests
        rcutorture: Print forward-progress test age upon failure
        rcutorture: Print time since GP end upon forward-progress failure
        rcutorture: Print histogram of CB invocation at OOM time
        rcutorture: Print GP age upon forward-progress failure
        rcu: Print per-CPU callback counts for forward-progress failures
        rcu: Account for nocb-CPU callback counts in RCU CPU stall warnings
        rcutorture: Dump grace-period diagnostics upon forward-progress OOM
        rcutorture: Prepare for asynchronous access to rcu_fwd_startat
        torture: Remove unnecessary "ret" variables
        rcutorture: Affinity forward-progress test to avoid housekeeping CPUs
        rcutorture: Break up too-long rcu_torture_fwd_prog() function
        rcutorture: Remove cbflood facility
        torture: Bring any extra CPUs online during kernel startup
        rcutorture: Add call_rcu() flooding forward-progress tests
        rcutorture/formal: Replace synchronize_sched() with synchronize_rcu()
        tools/kernel.h: Replace synchronize_sched() with synchronize_rcu()
        net/decnet: Replace rcu_barrier_bh() with rcu_barrier()
    • Linus Torvalds's avatar
      Merge branch 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · eed9688f
      Linus Torvalds authored
      Pull x86 RAS updates from Borislav Petkov:
       "This time around we have a subsystem reorganization to offer, with the
        new directory being
        and all compilation units' names streamlined under it"
      * 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Restore MCE injector's module name
        x86/mce: Unify pr_* prefix
        x86/mce: Streamline MCE subsystem's naming
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 72af8415
      Linus Torvalds authored
      Pull x86 microcode loading updates from Borislav Petkov:
       "This update contains work started by Maciej to make the microcode
        container verification more robust against all kinds of corruption and
        also unify verification paths between early and late loading.
        The result is a set of verification routines which validate the
        microcode blobs before loading it on the CPU. In addition, the code is
        a lot more streamlined and unified.
        In the process, some of the aspects of patch handling and loading were
        All provided by Maciej S. Szmigiero and Borislav Petkov"
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode/AMD: Update copyright
        x86/microcode/AMD: Check the equivalence table size when scanning it
        x86/microcode/AMD: Convert CPU equivalence table variable into a struct
        x86/microcode/AMD: Check microcode container data in the late loader
        x86/microcode/AMD: Fix container size's type
        x86/microcode/AMD: Convert early parser to the new verification routines
        x86/microcode/AMD: Change verify_patch()'s return value
        x86/microcode/AMD: Move chipset-specific check into verify_patch()
        x86/microcode/AMD: Move patch family check to verify_patch()
        x86/microcode/AMD: Simplify patch family detection
        x86/microcode/AMD: Concentrate patch verification
        x86/microcode/AMD: Cleanup verify_patch_size() more
        x86/microcode/AMD: Clean up per-family patch size checks
        x86/microcode/AMD: Move verify_patch_size() up in the file
        x86/microcode/AMD: Add microcode container verification
        x86/microcode/AMD: Subtract SECTION_HDR_SIZE from file leftover length
    • Linus Torvalds's avatar
      Merge branch 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a52fb43a
      Linus Torvalds authored
      Pull x86 cache control updates from Borislav Petkov:
       - The generalization of the RDT code to accommodate the addition of
         AMD's very similar implementation of the cache monitoring feature.
         This entails a subsystem move into a separate and generic
         arch/x86/kernel/cpu/resctrl/ directory along with adding
         vendor-specific initialization and feature detection helpers.
         Ontop of that is the unification of user-visible strings, both in the
         resctrl filesystem error handling and Kconfig.
         Provided by Babu Moger and Sherry Hurwitz.
       - Code simplifications and error handling improvements by Reinette
      * 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/resctrl: Fix rdt_find_domain() return value and checks
        x86/resctrl: Remove unnecessary check for cbm_validate()
        x86/resctrl: Use rdt_last_cmd_puts() where possible
        MAINTAINERS: Update resctrl filename patterns
        Documentation: Rename and update intel_rdt_ui.txt to resctrl_ui.txt
        x86/resctrl: Introduce AMD QOS feature
        x86/resctrl: Fixup the user-visible strings
        x86/resctrl: Add AMD's X86_FEATURE_MBA to the scattered CPUID features
        x86/resctrl: Rename the config option INTEL_RDT to RESCTRL
        x86/resctrl: Add vendor check for the MBA software controller
        x86/resctrl: Bring cbm_validate() into the resource structure
        x86/resctrl: Initialize the vendor-specific resource functions
        x86/resctrl: Move all the macros to resctrl/internal.h
        x86/resctrl: Re-arrange the RDT init code
        x86/resctrl: Rename the RDT functions and definitions
        x86/resctrl: Rename and move rdt files to a separate directory
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 42b00f12
      Linus Torvalds authored
      Pull KVM updates from Paolo Bonzini:
         - selftests improvements
         - large PUD support for HugeTLB
         - single-stepping fixes
         - improved tracing
         - various timer and vGIC fixes
         - Processor Tracing virtualization
         - STIBP support
         - some correctness fixes
         - refactorings and splitting of vmx.c
         - use the Hyper-V range TLB flush hypercall
         - reduce order of vcpu struct
         - WBNOINVD support
         - do not use -ftrace for __noclone functions
         - nested guest support for PAUSE filtering on AMD
         - more Hyper-V enlightenments (direct mode for synthetic timers)
         -  nested VFIO
         - bugfixes only this time"
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (171 commits)
        KVM: x86: Add CPUID support for new instruction WBNOINVD
        kvm: selftests: ucall: fix exit mmio address guessing
        Revert "compiler-gcc: disable -ftracer for __noclone functions"
        KVM: VMX: Move VM-Enter + VM-Exit handling to non-inline sub-routines
        KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs
        KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup
        MAINTAINERS: Add arch/x86/kvm sub-directories to existing KVM/x86 entry
        KVM/x86: Use SVM assembly instruction mnemonics instead of .byte streams
        KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()
        KVM/MMU: Flush tlb directly in kvm_set_pte_rmapp()
        KVM/MMU: Move tlb flush in kvm_set_pte_rmapp() to kvm_mmu_notifier_change_pte()
        KVM: Make kvm_set_spte_hva() return int
        KVM: Replace old tlb flush function with new one to flush a specified range.
        KVM/MMU: Add tlb flush with range helper function
        KVM/VMX: Add hv tlb range flush support
        x86/hyper-v: Add HvFlushGuestAddressList hypercall support
        KVM: Add tlb_remote_flush_with_range callback in kvm_x86_ops
        KVM: x86: Disable Intel PT when VMXON in L1 guest
        KVM: x86: Set intercept for Intel PT MSRs read/write
        KVM: x86: Implement Intel PT MSRs read/write emulation
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.21-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 460023a5
      Linus Torvalds authored
      Pull xen updates from Juergen Gross:
       "Xen features and fixes:
         - a series to enable KVM guests to be booted by qemu via the Xen PVH
           boot entry for speeding up KVM guest tests
         - a series for a common driver to be used by Xen PV frontends (right
           now drm and sound)
         - two other fixes in Xen related code"
      * tag 'for-linus-4.21-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        ALSA: xen-front: Use Xen common shared buffer implementation
        drm/xen-front: Use Xen common shared buffer implementation
        xen: Introduce shared buffer helpers for page directory...
        xen/pciback: Check dev_data before using it
        kprobes/x86/xen: blacklist non-attachable xen interrupt functions
        KVM: x86: Allow Qemu/KVM to use PVH entry point
        xen/pvh: Add memory map pointer to hvm_start_info struct
        xen/pvh: Move Xen code for getting mem map via hcall out of common file
        xen/pvh: Move Xen specific PVH VM initialization out of common file
        xen/pvh: Create a new file for Xen specific PVH code
        xen/pvh: Move PVH entry code out of Xen specific tree
        xen/pvh: Split CONFIG_XEN_PVH into CONFIG_PVH and CONFIG_XEN_PVH
    • Linus Torvalds's avatar
      Merge branch 'parisc-4.21-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · a5f2bd47
      Linus Torvalds authored
      Pull parisc updates from Helge Deller:
       "The major change in this patchset is the new system call table
        generation support from Firoz Khan"
      * 'parisc-4.21-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: syscalls: ignore nfsservctl for other architectures
        parisc: generate uapi header and system call table files
        parisc: add system call table generation support
        parisc: remove __NR_Linux from uapi header file.
        parisc: add __NR_syscalls along with __NR_Linux_syscalls
        parisc: move __IGNORE* entries to non uapi header
        parisc: Fix HP SDC hpa address output
        parisc: Fix serio address output
        parisc: Split out alternative live patching code
    • Linus Torvalds's avatar
      Merge tag 'mips_4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · 89261c57
      Linus Torvalds authored
      Pull MIPS updates from Paul Burton:
       "Here's the main MIPS pull for Linux 4.21. Core architecture changes
         - Syscall tables & definitions for unistd.h are now generated by
           scripts, providing greater consistency with other architectures &
           making it easier to add new syscalls.
         - Support for building kernels with no floating point support, upon
           which any userland attempting to use floating point instructions
           will receive a SIGILL. Mostly useful to shrink the kernel & as
           preparation for nanoMIPS support which does not yet include FP.
         - MIPS SIMD Architecture (MSA) vector register context is now exposed
           by ptrace via a new NT_MIPS_MSA regset.
         - ASIDs are now stored as 64b values even for MIPS32 kernels,
           expanding the ASID version field sufficiently that we don't need to
           worry about overflow & avoiding rare issues with reused ASIDs that
           have been observed in the wild.
         - The branch delay slot "emulation" page is now mapped without write
           permission for the user, preventing its use as a nice location for
           attacks to execute malicious code from.
         - Support for ioremap_prot(), primarily to allow gdb or other ptrace
           users the ability to view their tracee's memory using the same
           cache coherency attribute.
         - Optimizations to more cpu_has_* macros, allowing more to be
           compile-time constant where possible.
         - Enable building the whole kernel with UBSAN instrumentation.
         - Enable building the kernel with link-time dead code & data
        Platform specific changes include:
         - The Boston board gains a workaround for DMA prefetching issues with
           the EG20T Platform Controller Hub that it uses.
         - Cleanups to Cavium Octeon code removing about 20k lines of
           redundant code, mostly unused or duplicate register definitions in
         - defconfig updates for the DECstation machines, including new
           defconfigs for r4k & 64b machines.
         - Further work on Loongson 3 support.
         - DMA fixes for SiByte machines"
      * tag 'mips_4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (95 commits)
        MIPS: math-emu: Write-protect delay slot emulation pages
        MIPS: Remove struct mm_context_t fp_mode_switching field
        mips: generate uapi header and system call table files
        mips: add system call table generation support
        mips: remove syscall table entries
        mips: add +1 to __NR_syscalls in uapi header
        mips: rename scall64-64.S to scall64-n64.S
        mips: remove unused macros
        mips: add __NR_syscalls along with __NR_Linux_syscalls
        MIPS: Expand MIPS32 ASIDs to 64 bits
        MIPS: OCTEON: delete redundant register definitions
        MIPS: OCTEON: cvmx_gmxx_inf_mode: use oldest forward compatible definition
        MIPS: OCTEON: cvmx_mio_fus_dat3: use oldest forward compatible definition
        MIPS: OCTEON: cvmx_pko_mem_debug8: use oldest forward compatible definition
        MIPS: OCTEON: octeon-usb: use common gpio_bit definition
        MIPS: OCTEON: enable all OCTEON drivers in defconfig
        mips: annotate implicit fall throughs
        MIPS: Hardcode cpu_has_mips* where target ISA allows
        MIPS: MT: Remove norps command line parameter
        MIPS: Only include mmzone.h when CONFIG_NEED_MULTIPLE_NODES=y
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next · c2f1f3e0
      Linus Torvalds authored
      Pull sparc updates from David Miller:
       - Automatic system call table generation, from Firoz Khan.
       - Clean up accesses to the OF device names by using full_name instead
         of path_component_name.
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next:
        ALSA: sparc: Use of_node_name_eq for node name comparisons
        sbus: Use of_node_name_eq for node name comparisons
        sparc: generate uapi header and system call table files
        sparc: add system call table generation support
        sparc: add __NR_syscalls along with NR_syscalls
        sparc: move __IGNORE* entries to non uapi header
        sparc: Use DT node full_name instead of name for resources
        sparc: Remove unused leon_trans_init
        sparc: Use device_type helpers to access the node type
        sparc: Use of_node_name_eq for node name comparisons
        sparc: Convert to using %pOFn instead of device_node.name
        sparc: prom: use property "name" directly to construct node names
        of: Drop full path from full_name for PDT systems
        sparc: Convert to using %pOF instead of full_name
        fs/openpromfs: Use of_node_name_eq for node name comparisons
        fs/openpromfs: use full_name instead of path_component_name
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-4.21-mw1' of... · 9830afca
      Linus Torvalds authored
      Merge tag 'riscv-for-linus-4.21-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux
      Pull RISC-V updates from Palmer Dabbelt:
       "We don't have many patches for this merge window, probably because
        everything has been a bit busy with the holidays and conferences. The
        only big user-visible change is to move over to an SBI-based earlycon
        instead of our arch-specific early printk support.
        The only outstanding patch set I know of is the audit patch set, which
        I've managed to make a mess of and will attempt to clean up"
      * tag 'riscv-for-linus-4.21-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux:
        RISC-V: Select GENERIC_SCHED_CLOCK for clocksource drivers
        RISC-V: lib: minor asm cleanup
        RISC-V: Update Kconfig to better handle CMDLINE
        riscv: remove unused variable in ftrace
        RISC-V: add of_node_put()
        RISC-V: Fix of_node_* refcount
        riscv, atomic: Add #define's for the atomic_{cmp,}xchg_*() variants
        RISC-V: Remove EARLY_PRINTK support
        RISC-V: defconfig: Enable RISC-V SBI earlycon support
    • Linus Torvalds's avatar
      Merge tag 'microblaze-v5.0-rc1' of git://git.monstr.eu/linux-2.6-microblaze · 30807ef2
      Linus Torvalds authored
      Pull arch/microblaze updates from Michal Simek:
       - Fix multiple Kbuild/Makefile issues
       - Start to use system call table generation
      * tag 'microblaze-v5.0-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: remove the explicit removal of system.dtb
        microblaze: fix race condition in building boot images
        microblaze: add linux.bin* and simpleImage.* to PHONY
        microblaze: fix multiple bugs in arch/microblaze/boot/Makefile
        microblaze: move "... is ready" messages to arch/microblaze/Makefile
        microblaze: adjust the help to the real behavior
        microblaze: generate uapi header and system call table files
        microblaze: add system call table generation support
        microblaze: move __NR_syscalls macro from asm/unistd.h
        microblaze: Typo s/use use/use/
    • Linus Torvalds's avatar
      Merge tag 'asm-generic-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic · 507413a5
      Linus Torvalds authored
      Pull arch/sh syscall table scripting from Arnd Bergmann:
       "I worked with Firoz Khan to change all architectures to have their
        system call tables (syscall.S and asm/unistd.h) generated by a script
        from a more readable input file the same way that we already had on
        x86, s390 and arm.
        I offered to take those conversions through the asm-generic tree that
        did not get picked up by the architecture maintainers, and fortunately
        all but one have now been accepted into arch maintainer trees, so this
        branch only contains the conversion for arch/sh/, with permission from
        The conversion does not include the old 64-bit sh5 architecture, which
        has never shipped and not even compiled in a long time. The table in
        include/uapi/asm/unistd.h is also not included here, as Firoz is still
        working on that one, it will have to wait for the next following merge
        window, hopefully together with the addition of the 64-bit time_t
        system calls for the y2038 work that led to the system call table
      * tag 'asm-generic-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
        sh: generate uapi header and syscall table header files
        sh: add system call table generation support
        sh: add __NR_syscalls along with NR_syscalls
    • Linus Torvalds's avatar
      Merge tag 'please-pull-y2038prep' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · 9947ab7b
      Linus Torvalds authored
      Pull ia64 updates from Tony Luck:
       "Change ia64 to make it easier to update system call tables (in line
        with some other architectures).
        This is in preparation for y2038 changes which are forecasted to add
        several new system calls"
      * tag 'please-pull-y2038prep' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        ia64: generate uapi header and system call table files
        ia64: add system call table generation support
        ia64: add an offset for system call number
        ia64: add __NR_syscalls along with NR_syscalls
        ia64: add __NR_old_getpagesize in uapi header file
    • Linus Torvalds's avatar
      Merge tag 'm68k-for-v4.21-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · e0783bb4
      Linus Torvalds authored
      Pull m68k updates from Geert Uytterhoeven:
       - Generate syscall headers
       - Small improvements and cleanups
       - defconfig updates
      * tag 'm68k-for-v4.21-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: Generate uapi header and syscall table header files
        m68k: Add system call table generation support
        m68k: Add __NR_syscalls along with NR_syscalls
        m68k/defconfig: Update defconfigs for v4.20-rc1
        m68k: Remove redundant 'default n' from Kconfig
        m68k: Unroll raw_outsb() loop
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 5694cecd
      Linus Torvalds authored
      Pull arm64 festive updates from Will Deacon:
       "In the end, we ended up with quite a lot more than I expected:
         - Support for ARMv8.3 Pointer Authentication in userspace (CRIU and
           kernel-side support to come later)
         - Support for per-thread stack canaries, pending an update to GCC
           that is currently undergoing review
         - Support for kexec_file_load(), which permits secure boot of a kexec
           payload but also happens to improve the performance of kexec
           dramatically because we can avoid the sucky purgatory code from
           userspace. Kdump will come later (requires updates to libfdt).
         - Optimisation of our dynamic CPU feature framework, so that all
           detected features are enabled via a single stop_machine()
         - KPTI whitelisting of Cortex-A CPUs unaffected by Meltdown, so that
           they can benefit from global TLB entries when KASLR is not in use
         - 52-bit virtual addressing for userspace (kernel remains 48-bit)
         - Patch in LSE atomics for per-cpu atomic operations
         - Custom preempt.h implementation to avoid unconditional calls to
           preempt_schedule() from preempt_enable()
         - Support for the new 'SB' Speculation Barrier instruction
         - Vectorised implementation of XOR checksumming and CRC32
         - Workaround for Cortex-A76 erratum #1165522
         - Improved compatibility with Clang/LLD
         - Support for TX2 system PMUS for profiling the L3 cache and DMC
         - Reflect read-only permissions in the linear map by default
         - Ensure MMIO reads are ordered with subsequent calls to Xdelay()
         - Initial support for memory hotplug
         - Tweak the threshold when we invalidate the TLB by-ASID, so that
           mremap() performance is improved for ranges spanning multiple PMDs.
         - Minor refactoring and cleanups"
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (125 commits)
        arm64: kaslr: print PHYS_OFFSET in dump_kernel_offset()
        arm64: sysreg: Use _BITUL() when defining register bits
        arm64: cpufeature: Rework ptr auth hwcaps using multi_entry_cap_matches
        arm64: cpufeature: Reduce number of pointer auth CPU caps from 6 to 4
        arm64: docs: document pointer authentication
        arm64: ptr auth: Move per-thread keys from thread_info to thread_struct
        arm64: enable pointer authentication
        arm64: add prctl control for resetting ptrauth keys
        arm64: perf: strip PAC when unwinding userspace
        arm64: expose user PAC bit positions via ptrace
        arm64: add basic pointer authentication support
        arm64/cpufeature: detect pointer authentication
        arm64: Don't trap host pointer auth use to EL2
        arm64/kvm: hide ptrauth from guests
        arm64/kvm: consistently handle host HCR_EL2 flags
        arm64: add pointer authentication register bits
        arm64: add comments about EC exception levels
        arm64: perf: Treat EXCLUDE_EL* bit definitions as unsigned
        arm64: kpti: Whitelist Cortex-A CPUs that don't implement the CSV3 field
        arm64: enable per-task stack canaries
    • Linus Torvalds's avatar
      Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 13e1ad2b
      Linus Torvalds authored
      Pull x86 pti updates from Thomas Gleixner:
       "No point in speculating what's in this parcel:
         - Drop the swap storage limit when L1TF is disabled so the full space
           is available
         - Add support for the new AMD STIBP always on mitigation mode
         - Fix a bunch of STIPB typos"
      * 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/speculation: Add support for STIBP always-on preferred mode
        x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off
        x86/speculation: Change misspelled STIPB to STIBP
  3. 25 Dec, 2018 12 commits
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9f687ddd
      Linus Torvalds authored
      Pull timer updates from Thomas Gleixner:
       "The timer department delivers the following christmas presents:
        Core code:
         - Use proper seqcount initializer to make lockdep happy
         - SPDX annotations and cleanup of license boilerplates
         - Use DEFINE_SHOW_ATTRIBUTE() instead of open coding it
         - Minor cleanups
        Driver code:
         - Add the sched_clock for the arc timer (Alexey Brodkin)
         - Change the file timer names for riscv, rockchip, tegra20, sun4i and
           meson6 (Daniel Lezcano)
         - Add the DT bindings for r8a7796, r8a77470 and r8a774a1 (Biju Das)
         - Remove the early platform driver registration for timer-ti-dm
           (Bartosz Golaszewski)
         - Provide the sched_clock for the riscv timer (Anup Patel)
         - Add support for ARM64 for the imx-gpt and convert the imx-tpm to
           the timer-of API (Anson Huang)
         - Remove useless irq protection for the imx-gpt (Clément Péron)
         - Remove a duplicate function name for the vt8500 (Dan Carpenter)
         - Remove obsolete inclusion of <asm/smp_twd.h> for the tegra20 (Geert
         - Demote the prcmu and the custom sched_clock for the dbx500 and the
           ux500 (Linus Walleij)
         - Add a new timer clock for the RDA8810PL (Manivannan Sadhasivam)
         - Rename the macro to stick to the register name and add the delay
           timer (Martin Blumenstingl)
         - Switch the bcm2835 to the SPDX identifier (Stefan Wahren)
         - Fix the interrupt register access on the fttmr010 (Tao Ren)
         - Add missing of_node_put in the initialization path on the
           integrator-ap (Yangtao Li)"
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (39 commits)
        dt-bindings: timer: Document RDA8810PL SoC timer
        clocksource/drivers/rda: Add clock driver for RDA8810PL SoC
        clocksource/drivers/meson6: Change name meson6_timer timer-meson6
        clocksource/drivers/sun4i: Change name sun4i_timer to timer-sun4i
        clocksource/drivers/tegra20: Change name tegra20_timer to timer-tegra20
        clocksource/drivers/rockchip: Change name rockchip_timer to timer-rockchip
        clocksource/drivers/riscv: Change name riscv_timer to timer-riscv
        clocksource/drivers/riscv_timer: Provide the sched_clock
        clocksource/drivers/timer-imx-tpm: Specify clock name for timer-of
        clocksource/drivers/fttmr010: Fix invalid interrupt register access
        clocksource/drivers/integrator-ap: Add missing of_node_put()
        clocksource/drivers/bcm2835: Switch to SPDX identifier
        dt-bindings: timer: renesas, cmt: Document r8a774a1 CMT support
        clocksource/drivers/timer-imx-tpm: Convert the driver to timer-of
        clocksource/drivers/arc_timer: Utilize generic sched_clock
        dt-bindings: timer: renesas, cmt: Document r8a77470 CMT support
        dt-bindings: timer: renesas, cmt: Document r8a7796 CMT support
        clocksource/drivers/imx-gpt: Remove unnecessary irq protection
        clocksource/drivers/imx-gpt: Add support for ARM64
        clocksource/drivers/meson6_timer: Implement the ARM delay timer
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e4b99d41
      Linus Torvalds authored
      Pull irq updates from Thomas Gleixner:
       "The interrupt department provides:
        Core updates:
         - Better spreading to NUMA nodes in the affinity management
         - Support for more than one set of interrupts to spread out to allow
           separate queues for separate functionality of a single device.
         - Decouple the non queue interrupts from being managed. Those are
           usually general interrupts for error handling etc. and those should
           never be shut down. This also a preparation to utilize the
           spreading mechanism for initial spreading of non-managed interrupts
         - Make the single CPU target selection in the matrix allocator more
           balanced so interrupts won't accumulate on single CPUs in certain
         - A large spell checking patch so we don't end up fixing single typos
           over and over.
        Driver updates:
         - A bunch of new irqchip drivers (RDA8810PL, Madera, imx-irqsteer)
         - Updates for the 8MQ, F1C100s platform drivers
         - A number of SPDX cleanups
         - A workaround for a very broken GICv3 implementation on msm8996
           which sports a botched register set.
         - A platform-msi fix to prevent memory leakage
         - Various cleanups"
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (37 commits)
        genirq/affinity: Add is_managed to struct irq_affinity_desc
        genirq/core: Introduce struct irq_affinity_desc
        genirq/affinity: Remove excess indentation
        irqchip/stm32: protect configuration registers with hwspinlock
        dt-bindings: interrupt-controller: stm32: Document hwlock properties
        irqchip: Add driver for imx-irqsteer controller
        dt-bindings/irq: Add binding for Freescale IRQSTEER multiplexer
        irqchip: Add driver for Cirrus Logic Madera codecs
        genirq: Fix various typos in comments
        irqchip/irq-imx-gpcv2: Add IRQCHIP_DECLARE for i.MX8MQ compatible
        irqchip/irq-rda-intc: Fix return value check in rda8810_intc_init()
        irqchip/irq-imx-gpcv2: Silence "fall through" warning
        irqchip/gic-v3: Add quirk for msm8996 broken registers
        irqchip/gic: Add support to device tree based quirks
        dt-bindings/gic-v3: Add msm8996 compatible string
        irqchip/sun4i: Add support for Allwinner ARMv5 F1C100s
        irqchip/sun4i: Move IC specific register offsets to struct
        irqchip/sun4i: Add a struct to hold global variables
        dt-bindings: interrupt-controller: Add suniv interrupt-controller
        irqchip: Add RDA8810PL interrupt driver
    • Linus Torvalds's avatar
      Merge tag 'devprop-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · d8924c0d
      Linus Torvalds authored
      Pull device properties framework updates from Rafael Wysocki:
       "This introduces 'software nodes' that are analogous to the DT and ACPI
        firmware nodes except that they can be created by drivers themselves
        and do a couple of assorted cleanups.
         - Introduce "software nodes", analogous to the DT and ACPI firmware
           nodes except that they can be created by kernel code, in order to
           complement fwnodes representing real firmware nodes when they are
           incomplete (for example missing device properties) and to supply
           the primary fwnode when the firmware lacks hardware description for
           a device completely, and replace the "property_set" struct
           fwnode_handle type with software nodes (Heikki Krogerus).
         - Clean up the just introduced software nodes support and fix a
           commet in the graph-handling code (Colin Ian King, Marco Felsch)"
      * tag 'devprop-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        device property: fix fwnode_graph_get_next_endpoint() documentation
        drivers: base: swnode: remove need for a temporary string for the node name
        device property: Remove struct property_set
        device property: Move device_add_properties() to swnode.c
        drivers: base: Introducing software nodes to the firmware node framework
        ACPI / glue: Add acpi_platform_notify() function
        drivers core: Prepare support for multiple platform notifications
        driver core: platform: Remove duplicated device_remove_properties() call
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 1fbb2dc6
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "This round is dominated by NXP's i.MX clk drivers. We gained support
        for two or three i.MX SoCs in here and that mostly means a lot of
        driver code and data.
        Beyond that platform, there are some new Mediatek, Amlogic, and
        Qualcomm clk drivers added in here, and then we get to the long tail
        of driver updates and non-critical fixes all around, including code
        for vendors such as Renesas, Rockchip, Nvidia, and Allwinner. Overall,
        the driver updates look normal.
        Apart from the usual driver updates we have an update to make
        registering OF based clk providers a little simpler when they're
        devices created as a child of a device backed by a node in DT. Drivers
        don't have to jump through hoops to unregister the provider upon
        driver removal anymore because the API does the right thing and uses
        the parent device DT node.
         - Make devm_of_clk_add_hw_provider() use parent dt node if necessary
         - Various SPDX taggings
         - Mark clk_ops const when possible
        New Drivers:
         - NXP i.MX7ULP SoC clock support
         - NXP i.MX8QXP SoC clock support
         - NXP i.MX8MQ SoC clock support
         - NXP QorIQ T1023 SoC support
         - Qualcomm SDM845 audio subsystem clks
         - Qualcomm SDM845 GPU clck controllers
         - Qualcomm QCS404 RPM clk support
         - Mediatek MT7629 SoC clk controllers
         - Allwinner F1c100s SoC clocks
         - Allwinner H6 display engine clocks
         - Amlogic GX video clocks
         - Support for Amlogic meson8b CPU frequency scaling
         - Amlogic Meson8b CPU post-divider clocks
         - Proper suspend/resume on VersaClock5
         - Shrink code some with DEFINE_SHOW_ATTRIBUTE()
         - Register fixes for Rockchip rk3188 and rk3328
         - One new critical clock for Rockchip rk3188 and a fixed clock id
           (double used number)
         - New clock id for Rockchip rk3328
         - Amlogic Meson8/Meson8b video clock support
         - Amlogic got a clk-input helper and used it for the axg-audio clock
         - Sigma Delta modulation for the Allwinner A33 audio clocks
         - Support for CPEX (timer) clocks on various Renesas R-Car Gen3 and
           RZ/G2 SoCs
         - Support for SDHI HS400 clocks on early revisions of Renesas R-Car
           H3 and M3-W
         - Support for SDHI and USB clocks on Renesas RZ/A2
         - Support for RPC (SPI Multi I/O Bus Controller) clocks on Renesas
           R-Car V3M
         - Qualcomm MSM8998 GCC driver improvements (resets, drop unused clks,
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (172 commits)
        clk: imx: imx7ulp: add arm hsrun mode clocks support
        dt-bindings: clock: imx7ulp: add HSRUN mode related clocks
        clk: Use of_node_name_eq for node name comparisons
        clk: vc5: Add suspend/resume support
        clk: qcom: Drop unused 8998 clock
        clk: qcom: Leave mmss noc on for 8998
        clk: tegra: Return the exact clock rate from clk_round_rate
        clk: tegra30: Use Tegra CPU powergate helper function
        soc/tegra: pmc: Drop SMP dependency from CPU APIs
        clk: tegra: Fix maximum audio sync clock for Tegra124/210
        clk: tegra: get rid of duplicate defines
        clk: imx: add imx8qxp lpcg driver
        clk: imx: add lpcg clock support
        clk: imx: add imx8qxp clk driver
        clk: imx: Make the i.MX8MQ CCM clock driver CLK_IMX8MQ dependant
        clk: imx: add scu clock common part
        clk: imx: add configuration option for mmio clks
        dt-bindings: clock: add imx8qxp lpcg clock binding
        dt-bindings: clock: imx8qxp: add SCU clock IDs
        clk: qcom: Add missing msm8998 resets
    • Linus Torvalds's avatar
      Merge tag 'leds-for-4.21-rc1' of... · 4e4390ad
      Linus Torvalds authored
      Merge tag 'leds-for-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds
      Pull LED updates from Jacek Anaszewski:
       "There are several few-liners, where most of them are fixes and
        improvments. One thing standing out is ground preparation for
        inititializing trigger parameters via Device Tree.
        We introduce LED_INIT_DEFAULT_TRIGGER flag for that purpose and set it
        when default trigger is matched. It indicates that trigger should
        parse DT properties to retrieve the initialization data when set as
        default one"
      * tag 'leds-for-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        led: triggers: Initialize LED_INIT_DEFAULT_TRIGGER if trigger is brought after class
        led: triggers: Add LED_INIT_DEFAULT_TRIGGER flag
        led: triggers: Break the for loop after default trigger is found
        leds: pwm: Use OF variant of LED registering function
        leds: pwm: Simplify with resource-managed devm_led_classdev_register()
        leds: gpio: Drop unneeded manual of_node assignment
        leds: 88pm860x: Use of_node_name_eq for node name comparisons
        leds: powernv: add of_node_put()
    • Linus Torvalds's avatar
      Merge tag 'regmap-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · b1669432
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "This has been a busy release for the regmap-irq code, there's several
        new features been added, including an API cleanup for how we specify
        types that affected one existing driver (gpio-max77620):
         - Support for hardware that flags rising and falling edges on
           separate status bits from Bartosz Golaszewski.
         - Support for explicitly clearing interrupts before unmasking from
           Bartosz Golaszewski.
         - Support for level triggered IRQs from Matti Vaittinen"
      * tag 'regmap-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: irq: add an option to clear status registers on unmask
        regmap: regmap-irq/gpio-max77620: add level-irq support
        regmap: regmap-irq: Remove default irq type setting from core
        regmap: debugfs: convert to DEFINE_SHOW_ATTRIBUTE
        regmap: rbtree: convert to DEFINE_SHOW_ATTRIBUTE
        regmap: irq: handle HW using separate rising/falling edge interrupts
        regmap: add a new macro:REGMAP_IRQ_REG_LINE(_id, _reg_bits)
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 0051db82
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "The main thing this release has been a lot of work on the integration
        with SPI NOR flashes, there's been some specific support for a while
        for controller features designed to make them perform better but it's
        not worked out as well as hoped so the interface has been redesigned
        in a way that will hopefully do better - it's already been adopted by
        a number of additional controllers so things are looking good.
        Otherwise most of the work has been driver specific:
         - Support for better integration with NOR flashes from Boris
           Brezillon and Yogesh Narayan Gaur plus usage of it in several
         - A big cleanup of the Rockchip driver from Emil Renner Berthing.
         - Lots of performance improvements for bcm2835 from Lukas Wunner.
         - Slave mode support for pxa2xx from Lubomir Rintel.
         - Support for Macronix MXIC, Mediatek MT7629 and MT8183, NPCM PSPI,
           and Renesas r8a77470"
      * tag 'spi-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (90 commits)
        spi: sh-msiof: Reduce the number of times write to and perform the transmission from FIFO
        spi: sh-msiof: Add r8a774c0 support
        doc: lpspi: Document DT bindings for LPSPI slave mode
        spi: lpspi: Let watermark change with send data length
        spi: lpspi: Add slave mode support
        spi: lpspi: Replace all "master" with "controller"
        spi: imx: drop useless member speed_hz from driver data struct
        spi: imx: rename config callback and add useful parameters
        spi: imx: style fixes
        spi: imx: mx51-ecspi: Move some initialisation to prepare_message hook.
        spi: imx: add a device specific prepare_message callback
        mtd: atmel-quadspi: disallow building on ebsa110
        spi: Update NPCM PSPI controller documentation
        spi: npcm: Modify pspi send function
        spi: Use of_node_name_eq for node name comparisons
        spi: dw-mmio: add ACPI support
        spi: bcm2835: Synchronize with callback on DMA termination
        spi: bcm2835: Speed up FIFO access if fill level is known
        spi: bcm2835: Polish transfer of DMA prologue
        spi: spi-mem: add support for octal mode I/O data transfer
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 79f20778
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "This has been a very busy release for the core, some fixes, one large
        new feature and a big bit of refactoring to update the GPIO API:
         - Support for coupled regulators from Dmitry Osipenko based on a
           prior attempt by Maciej Purski, allowing us to handle situations
           where the voltages on two regulators can't be too far apart from
           each other.
         - Conversion of the GPIO support in both drivers and the core to use
           GPIO descriptors rather than numbers, part of the overall project
           to remove GPIO numbers.
         - Support for standby mode suspend states from Andrei Stefanescu.
         - New drivers for Allwinner AXP209, Cirrus Logic Lochnagar and
           Microchip MPC16502"
      * tag 'regulator-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (90 commits)
        regulator: tps65910: fix a missing check of return value
        regulator: mcp16502: Select REGMAP_I2C to fix build error
        regulator: convert to DEFINE_SHOW_ATTRIBUTE
        regulator: mcp16502: Fix missing n_voltages setting
        regulator: mcp16502: Use #ifdef CONFIG_PM_SLEEP around mcp16502_suspend/resume_noirq
        regulator: mcp16502: code cleanup
        regulator: act8945a-regulator: make symbol act8945a_pm static
        drivers/regulator: fix a missing check of return value
        regulator: act8945a-regulator: fix 'defined but not used' compiler warning
        regulator: axp20x: fix set_ramp_delay for AXP209/dcdc2
        regulator: mcp16502: add support for suspend
        mfd: axp20x: use explicit bit defines
        mfd: axp20x: Clean up included headers
        regulator: dts: enable soft-start and ramp delay for the OLinuXino Lime2
        dt-bindings: mfd: axp20x: Add software based soft_start for AXP209 LDO3
        regulator: axp20x: add software based soft_start for AXP209 LDO3
        dt-bindings: mfd: axp20x: add support for regulator-ramp-delay for AXP209
        regulator: axp20x: add support for set_ramp_delay for AXP209
        mfd: axp20x: name voltage ramping define properly
        regulator: mcp16502: add regulator driver for MCP16502
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-4.21-rc1' of... · d923fd6d
      Linus Torvalds authored
      Merge tag 'pwm/for-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
      Pull pwm updates from Thierry Reding:
       "Not a lot going on this cycle.
        There's some more cleanup going on and new driver support that was not
        quite ready in time for v4.21-rc1, but here are a few fixes and
        improvements that are good to go.
        The Kona PWM driver can now be built on the Cygnus architecture and
        the i.MX driver gained support for hardware readback. Some small fixes
        are provided for the clks711x and lpc18xx-sct drivers.
        Finally, to round things off some drivers are switched to SPDX license
      * tag 'pwm/for-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
        dt-bindings: pwm: rcar: Add r8a774c0 support
        pwm: imx: Add ipg clock operation
        pwm: clps711x: Switch to SPDX identifier
        pwm: clps711x: Fix period calculation
        pwm: bcm2835: Switch to SPDX identifier
        pwm: Enable Kona PWM to be built for the Cygnus architecture
        pwm: Drop legacy wrapper for changing polarity
        pwm: imx: Implement get_state() function for hardware readout
        pwm: imx: Use bitops and bitfield macros to define register values
        pwm: imx: Sort include files
        pwm: lpc18xx-sct: Don't reconfigure PWM in .request and .free
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · e6d13150
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These update the ACPICA code in the kernel to the 20181213 upstream
        revision, make it possible to build the ACPI subsystem without PCI
        support, and a new OEM _OSI string, add a new device support to the
        ACPI driver for AMD SoCs and fix PM handling in the ACPI driver for
        Intel SoCs, fix the SPCR table handling and do some assorted fixes and
         - Update the ACPICA code in the kernel to the 20181213 upstream
           revision including:
            * New Windows _OSI strings (Bob Moore, Jung-uk Kim).
            * Buffers-to-string conversions update (Bob Moore).
            * Removal of support for expressions in package elements (Bob
            * New option to display method/object evaluation in debug output
              (Bob Moore).
            * Compiler improvements (Bob Moore, Erik Schmauss).
            * Minor debugger fix (Erik Schmauss).
            * Disassembler improvement (Erik Schmauss).
            * Assorted cleanups (Bob Moore, Colin Ian King, Erik Schmauss).
         - Add support for a new OEM _OSI string to indicate special handling
           of secondary graphics adapters on some systems (Alex Hung).
         - Make it possible to build the ACPI subystem without PCI support
           (Sinan Kaya).
         - Make the SPCR table handling regard baud rate 0 in accordance with
           the specification of it and make the DSDT override code support
           DSDT code names generated by recent ACPICA (Andy Shevchenko, Wang
           Dongsheng, Nathan Chancellor).
         - Add clock frequency for Hisilicon Hip08 SPI controller to the ACPI
           driver for AMD SoCs (APD) (Jay Fang).
         - Fix the PM handling during device init in the ACPI driver for Intel
           SoCs (LPSS) (Hans de Goede).
         - Avoid double panic()s by clearing the APEI GHES block_status before
           panic() (Lenny Szubowicz).
         - Clean up a function invocation in the ACPI core and get rid of some
           code duplication by using the DEFINE_SHOW_ATTRIBUTE macro in the
           APEI support code (Alexey Dobriyan, Yangtao Li)"
      * tag 'acpi-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (31 commits)
        ACPI / tables: Add an ifdef around amlcode and dsdt_amlcode
        ACPI/APEI: Clear GHES block_status before panic()
        ACPI: Make PCI slot detection driver depend on PCI
        ACPI/IORT: Stub out ACS functions when CONFIG_PCI is not set
        arm64: select ACPI PCI code only when both features are enabled
        PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set
        ACPICA: Remove PCI bits from ACPICA when CONFIG_PCI is unset
        ACPI: Allow CONFIG_PCI to be unset for reboot
        ACPI: Move PCI reset to a separate function
        ACPI / OSI: Add OEM _OSI string to enable dGPU direct output
        ACPI / tables: add DSDT AmlCode new declaration name support
        ACPICA: Update version to 20181213
        ACPICA: change coding style to match ACPICA, no functional change
        ACPICA: Debug output: Add option to display method/object evaluation
        ACPICA: disassembler: disassemble OEMx tables as AML
        ACPICA: Add "Windows 2018.2" string in the _OSI support
        ACPICA: Expressions in package elements are not supported
        ACPICA: Update buffer-to-string conversions
        ACPICA: add comments, no functional change
        ACPICA: Remove defines that use deprecated flag
    • Linus Torvalds's avatar
      Merge tag 'pm-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 1e2af254
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These add sysadmin documentation for cpuidle, extend the cpuidle
        subsystem somewhat, improve the handling of performance states in the
        generic power domains (genpd) and operating performance points (OPP)
        frameworks, add a new cpufreq driver for Qualcomm SoCs, update some
        other cpufreq drivers, switch over the runtime PM framework to using
        high-res timers for device autosuspend, fix a problem with
        suspend-to-idle on ACPI-based platforms, add system-wide suspend and
        resume handling to the devfreq framework, do some janitorial cleanups
        all over and update some utilities.
         - Add sysadmin documentation for cpuidle (Rafael Wysocki).
         - Make it possible to specify a cpuidle governor from kernel command
           line, add new cpuidle state sysfs attributes for governor
           evaluation, and improve the "polling" idle state handling (Rafael
         - Fix the handling of the "required-opps" DT property in the
           operating performance points (OPP) framework, improve the
           integration of it with the generic power domains (genpd) framework,
           improve the handling of performance states in them and clean up the
           idle states vs performance states separation in genpd (Viresh
           Kumar, Ulf Hansson).
         - Add a cpufreq driver called "qcom-hw" for Qualcomm SoCs using a
           hardware engine to control CPU frequency transitions along with DT
           bindings for it (Taniya Das).
         - Fix an intel_pstate driver issue related to CPU offline and update
           the documentation of it (Srinivas Pandruvada).
         - Clean up the imx6q cpufreq driver (Anson Huang).
         - Add SPDX license IDs to cpufreq schedutil governor files (Daniel
         - Switch over the runtime PM framework to using high-res timers for
           device autosuspend to allow the control of it to be more precise
           (Vincent Guittot).
         - Disable non-wakeup ACPI GPEs during suspend-to-idle so that they
           don't prevent the system from reaching the target low-power state
           and simplify the suspend-to-idle handling on ACPI platforms without
           full Low-Power S0 Idle (LPS0) support (Rafael Wysocki).
         - Add system-wide suspend and resume support to the devfreq framework
           (Lukasz Luba).
         - Clean up the SmartReflex adaptive voltage scaling (AVS) driver and
           add an SPDX license ID to it (Nishanth Menon, Uwe Kleine-König,
           Thomas Meyer).
         - Get rid of code duplication by using the DEFINE_SHOW_ATTRIBUTE
           macro in some places, fix some DT node refcount leaks, and do some
           other janitorial cleanups (Yangtao Li).
         - Update the cpupower, intel_pstate_tracer and turbosat utilities
           (Abhishek Goel, Doug Smythies, Len Brown)"
      * tag 'pm-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (54 commits)
        PM / Domains: remove define_genpd_open_function() and define_genpd_debugfs_fops()
        PM-runtime: Switch autosuspend over to using hrtimers
        cpufreq: qcom-hw: Add support for QCOM cpufreq HW driver
        dt-bindings: cpufreq: Introduce QCOM cpufreq firmware bindings
        ACPI: PM: Loop in full LPS0 mode only
        ACPI: EC / PM: Disable non-wakeup GPEs for suspend-to-idle
        tools/power/x86/intel_pstate_tracer: Fix non root execution for post processing a trace file
        tools/power turbostat: consolidate duplicate model numbers
        tools/power turbostat: fix goldmont C-state limit decoding
        PM / Domains: Propagate performance state updates
        PM / Domains: Factorize dev_pm_genpd_set_performance_state()
        PM / Domains: Save OPP table pointer in genpd
        OPP: Don't return 0 on error from of_get_required_opp_performance_state()
        OPP: Add dev_pm_opp_xlate_performance_state() helper
        OPP: Improve _find_table_of_opp_np()
        PM / Domains: Make genpd performance states orthogonal to the idlestates
        PM / sleep: convert to DEFINE_SHOW_ATTRIBUTE
        cpuidle: Add 'above' and 'below' idle state metrics
        PM / AVS: SmartReflex: Switch to SPDX Licence ID
        PM / AVS: SmartReflex: NULL check before some freeing functions is not needed
    • Linus Torvalds's avatar
      Merge tag 'edac_for_4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · b271b212
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
       - Support for ZynqMP DDR controller support to synopsys_edac along with
         a driver cleanup and generalization for the addition of support for
         the new IP. (Manish Narani)
       - Removal of the /sys/bus/edac devices hierarchy. This enabled us to
         get rid of the silly memory controllers maximum number notion. (Tony
         Luck and Borislav Petkov)
       - skx_edac improvements and fixes. (Qiuxu Zhuo and Tony Luck)
       - The usual garden variety of small cleanups and fixes.
      * tag 'edac_for_4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: (25 commits)
        EDAC, fsl_ddr: Add LS1021A to the list of supported hardware
        EDAC, i5000: Remove set but not used local variables
        MAINTAINERS, EDAC: Drop bouncing email
        EDAC, i82975x: Fix spelling mistake "reserverd" -> "reserved"
        EDAC, fsl: Move error injection under CONFIG_EDAC_DEBUG
        EDAC, skx: Let EDAC core show the decoded result for debugfs
        EDAC, skx: Move debugfs node under EDAC's hierarchy
        EDAC, skx: Prepend hex formatting with '0x'
        EDAC, skx: Fix function calling order in skx_exit()
        EDAC: Drop per-memory controller buses
        EDAC: Don't add devices under /sys/bus/edac
        EDAC: Fix indentation issues in several EDAC drivers
        EDAC, skx: Fix randconfig builds in a better way
        EDAC, i82975x: Remove set but not used variable dtype
        EDAC, qcom_edac: Remove irq_handled local variable
        EDAC, synopsys: Add Error Injection support for ZynqMP DDR controller
        EDAC, synopsys: Add ECC support for ZynqMP DDR controller
        EDAC, synopsys: Add macro defines for ZynqMP DDRC
        dt: bindings: Document ZynqMP DDRC in Synopsys documentation
        EDAC, synopsys: Add error handling for the of_device_get_match_data() result