1. 03 Jul, 2017 22 commits
    • Linus Torvalds's avatar
      Merge branch 'parisc-4.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · e5859eb8
      Linus Torvalds authored
      Pull parisc updates from Helge Deller:
       "Main changes are:
      
         - Added support to the parisc dma functions to return DMA_ERROR_CODE
           if DMA isn't possible. This fixes a long standing kernel crash if
           parport_pc is enabled (by Thomas Bogendoerfer, marked for stable
           series).
      
         - Use the compat_sys_keyctl() in compat mode (by Eric Biggers, marked
           for stable series).
      
         - Initial support for the Page Deallocation Table (PDT) which is
           maintained by firmware and holds the list of memory addresses which
           had physical errors. By checking that list we can prevent Linux to
           use those broken memory areas.
      
         - Ensure IRQs are off in switch_mm().
      
         - Report SIGSEGV instead of SIGBUS when running out of stack.
      
         - Mark the cr16 clocksource stable on single-socket and single-core
           machines"
      
      * 'parisc-4.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs
        parisc: Report SIGSEGV instead of SIGBUS when running out of stack
        parisc: use compat_sys_keyctl()
        parisc: Don't hardcode PSW values in hpmc code
        parisc: Don't hardcode PSW values in gsc_*() functions
        parisc: Avoid zeroing gr[0] in fixup_exception()
        parisc/mm: Ensure IRQs are off in switch_mm()
        parisc: Add Page Deallocation Table (PDT) support
        parisc: Enhance detection of synchronous cr16 clocksources
        parisc: Drop per_cpu uaccess related exception_data struct
        parisc: Inline trivial exception code in lusercopy.S
      e5859eb8
    • Linus Torvalds's avatar
      Merge tag 'microblaze-4.13-rc1' of git://git.monstr.eu/linux-2.6-microblaze · 058e88d3
      Linus Torvalds authored
      Pull microblaze updates from Michal Simek:
      
       - timer fix
      
       - use simplified macro in dma.c
      
       - wire-up new syscall
      
       - remove asp-generic wrappers
      
       - fix MMU table handling
      
       - defconfig updates
      
       - low-level entry.S changes
      
      * tag 'microblaze-4.13-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: Fix MSR flags when returning from exception
        microblaze: Separate GP registers from MSR handling
        microblaze: Enabling CONFIG_BRIDGE in mmu_defconfig
        microblaze: Enabling CONFIGS related to MTD
        microblaze: Update defconfigs
        microblaze: mm: Flush TLB to ensure correct mapping when higmem ON
        microblaze: remove asm-generic wrapper headers
        microblaze: wire up statx syscall
        microblaze: Set ->min_delta_ticks and ->max_delta_ticks for timer
        microblaze: use sg_phys()
      058e88d3
    • Linus Torvalds's avatar
      Merge tag 'm68k-for-v4.13-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 241e5e6f
      Linus Torvalds authored
      Pull m68k updates from Geert Uytterhoeven:
      
        - NuBus improvements and cleanups
      
        - defconfig updates
      
        - Fix debugger syscall restart interactions, leading to the global
          removal of ptrace_signal_deliver()
      
      * tag 'm68k-for-v4.13-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: Remove ptrace_signal_deliver
        m68k/defconfig: Update defconfigs for v4.12-rc1
        nubus: Fix pointer validation
        nubus: Remove slot zero probe
      241e5e6f
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7a69f9c6
      Linus Torvalds authored
      Pull x86 mm updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - Continued work to add support for 5-level paging provided by future
           Intel CPUs. In particular we switch the x86 GUP code to the generic
           implementation. (Kirill A. Shutemov)
      
         - Continued work to add PCID CPU support to native kernels as well.
           In this round most of the focus is on reworking/refreshing the TLB
           flush infrastructure for the upcoming PCID changes. (Andy
           Lutomirski)"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
        x86/mm: Delete a big outdated comment about TLB flushing
        x86/mm: Don't reenter flush_tlb_func_common()
        x86/KASLR: Fix detection 32/64 bit bootloaders for 5-level paging
        x86/ftrace: Exclude functions in head64.c from function-tracing
        x86/mmap, ASLR: Do not treat unlimited-stack tasks as legacy mmap
        x86/mm: Remove reset_lazy_tlbstate()
        x86/ldt: Simplify the LDT switching logic
        x86/boot/64: Put __startup_64() into .head.text
        x86/mm: Add support for 5-level paging for KASLR
        x86/mm: Make kernel_physical_mapping_init() support 5-level paging
        x86/mm: Add sync_global_pgds() for configuration with 5-level paging
        x86/boot/64: Add support of additional page table level during early boot
        x86/boot/64: Rename init_level4_pgt and early_level4_pgt
        x86/boot/64: Rewrite startup_64() in C
        x86/boot/compressed: Enable 5-level paging during decompression stage
        x86/boot/efi: Define __KERNEL32_CS GDT on 64-bit configurations
        x86/boot/efi: Fix __KERNEL_CS definition of GDT entry on 64-bit configurations
        x86/boot/efi: Cleanup initialization of GDT entries
        x86/asm: Fix comment in return_from_SYSCALL_64()
        x86/mm/gup: Switch GUP to the generic get_user_page_fast() implementation
        ...
      7a69f9c6
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9bc088ab
      Linus Torvalds authored
      Pull x86 microcode updates from Ingo Molnar:
       "The main changes are a fix early microcode application for
        resume-from-RAM, plus a 32-bit initrd placement fix - by Borislav
        Petkov"
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode: Make a couple of symbols static
        x86/microcode/intel: Save pointer to ucode patch for early AP loading
        x86/microcode: Look for the initrd at the correct address on 32-bit
      9bc088ab
    • Linus Torvalds's avatar
      Merge branch 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e1449007
      Linus Torvalds authored
      Pull x86 hyperv updates from Ingo Molnar:
       "Avoid boot time TSC calibration on Hyper-V hosts, to improve
        calibration robustness. (Vitaly Kuznetsov)"
      
      * 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/hyperv: Read TSC frequency from a synthetic MSR
        x86/hyperv: Check frequency MSRs presence according to the specification
      e1449007
    • Linus Torvalds's avatar
      Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e6529f6f
      Linus Torvalds authored
      Pull x86 debug update from Ingo Molnar:
       "A single fix for an off-by one bug in test_nmi_ipi() that probably
        doesn't matter in practice"
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/nmi: Fix timeout test in test_nmi_ipi()
      e6529f6f
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6553698b
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Two small cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/paravirt: Remove unnecessary return from void function
        x86/boot: Add missing strchr() declaration
      6553698b
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 25e09ca5
      Linus Torvalds authored
      Pull x86 boot updates from Ingo Molnar:
       "The main changes in this cycle were KASLR improvements for rare
        environments with special boot options, by Baoquan He. Also misc
        smaller changes/cleanups"
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/debug: Extend the lower bound of crash kernel low reservations
        x86/boot: Remove unused copy_*_gs() functions
        x86/KASLR: Use the right memcpy() implementation
        Documentation/kernel-parameters.txt: Update 'memmap=' boot option description
        x86/KASLR: Handle the memory limit specified by the 'memmap=' and 'mem=' boot options
        x86/KASLR: Parse all 'memmap=' boot option entries
      25e09ca5
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 48b5259c
      Linus Torvalds authored
      Pull x86 asm updates from Ingo Molnar:
       "A single commit micro-optimizing short user copies on certain Intel
        CPUs"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings
      48b5259c
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2a275382
      Linus Torvalds authored
      Pull x86 apic updates from Ingo Molnar:
       "Janitorial changes: removal of an unused function plus __init
        annotations"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic: Make arch_init_msi/htirq_domain __init
        x86/apic: Make init_legacy_irqs() __init
        x86/ioapic: Remove unused IO_APIC_irq_trigger() function
      2a275382
    • Linus Torvalds's avatar
      Merge branch 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 59b60185
      Linus Torvalds authored
      Pull nohz updates from Ingo Molnar:
       "The main changes in this cycle relate to fixing another bad (but
        sporadic and hard to detect) interaction between the dynticks
        scheduler tick and hrtimers, plus related improvements to better
        detection and handling of similar problems - by Frédéric Weisbecker"
      
      * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        nohz: Fix spurious warning when hrtimer and clockevent get out of sync
        nohz: Fix buggy tick delay on IRQ storms
        nohz: Reset next_tick cache even when the timer has no regs
        nohz: Fix collision between tick and other hrtimers, again
        nohz: Add hrtimer sanity check
      59b60185
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9bd42183
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - Add the SYSTEM_SCHEDULING bootup state to move various scheduler
           debug checks earlier into the bootup. This turns silent and
           sporadically deadly bugs into nice, deterministic splats. Fix some
           of the splats that triggered. (Thomas Gleixner)
      
         - A round of restructuring and refactoring of the load-balancing and
           topology code (Peter Zijlstra)
      
         - Another round of consolidating ~20 of incremental scheduler code
           history: this time in terms of wait-queue nomenclature. (I didn't
           get much feedback on these renaming patches, and we can still
           easily change any names I might have misplaced, so if anyone hates
           a new name, please holler and I'll fix it.) (Ingo Molnar)
      
         - sched/numa improvements, fixes and updates (Rik van Riel)
      
         - Another round of x86/tsc scheduler clock code improvements, in hope
           of making it more robust (Peter Zijlstra)
      
         - Improve NOHZ behavior (Frederic Weisbecker)
      
         - Deadline scheduler improvements and fixes (Luca Abeni, Daniel
           Bristot de Oliveira)
      
         - Simplify and optimize the topology setup code (Lauro Ramos
           Venancio)
      
         - Debloat and decouple scheduler code some more (Nicolas Pitre)
      
         - Simplify code by making better use of llist primitives (Byungchul
           Park)
      
         - ... plus other fixes and improvements"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (103 commits)
        sched/cputime: Refactor the cputime_adjust() code
        sched/debug: Expose the number of RT/DL tasks that can migrate
        sched/numa: Hide numa_wake_affine() from UP build
        sched/fair: Remove effective_load()
        sched/numa: Implement NUMA node level wake_affine()
        sched/fair: Simplify wake_affine() for the single socket case
        sched/numa: Override part of migrate_degrades_locality() when idle balancing
        sched/rt: Move RT related code from sched/core.c to sched/rt.c
        sched/deadline: Move DL related code from sched/core.c to sched/deadline.c
        sched/cpuset: Only offer CONFIG_CPUSETS if SMP is enabled
        sched/fair: Spare idle load balancing on nohz_full CPUs
        nohz: Move idle balancer registration to the idle path
        sched/loadavg: Generalize "_idle" naming to "_nohz"
        sched/core: Drop the unused try_get_task_struct() helper function
        sched/fair: WARN() and refuse to set buddy when !se->on_rq
        sched/debug: Fix SCHED_WARN_ON() to return a value on !CONFIG_SCHED_DEBUG as well
        sched/wait: Disambiguate wq_entry->task_list and wq_head->task_list naming
        sched/wait: Move bit_wait_table[] and related functionality from sched/core.c to sched/wait_bit.c
        sched/wait: Split out the wait_bit*() APIs from <linux/wait.h> into <linux/wait_bit.h>
        sched/wait: Re-adjust macro line continuation backslashes in <linux/wait.h>
        ...
      9bd42183
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7447d562
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Most of the changes are for tooling, the main changes in this cycle were:
      
         - Improve Intel-PT hardware tracing support, both on the kernel and
           on the tooling side: PTWRITE instruction support, power events for
           C-state tracing, etc. (Adrian Hunter)
      
         - Add support to measure SMI cost to the x86 architecture, with
           tooling support in 'perf stat' (Kan Liang)
      
         - Support function filtering in 'perf ftrace', plus related
           improvements (Namhyung Kim)
      
         - Allow adding and removing fields to the default 'perf script'
           columns, using + or - as field prefixes to do so (Andi Kleen)
      
         - Allow resolving the DSO name with 'perf script -F brstack{sym,off},dso'
           (Mark Santaniello)
      
         - Add perf tooling unwind support for PowerPC (Paolo Bonzini)
      
         - ... and various other improvements as well"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (84 commits)
        perf auxtrace: Add CPU filter support
        perf intel-pt: Do not use TSC packets for calculating CPU cycles to TSC
        perf intel-pt: Update documentation to include new ptwrite and power events
        perf intel-pt: Add example script for power events and PTWRITE
        perf intel-pt: Synthesize new power and "ptwrite" events
        perf intel-pt: Move code in intel_pt_synth_events() to simplify attr setting
        perf intel-pt: Factor out intel_pt_set_event_name()
        perf intel-pt: Tidy messages into called function intel_pt_synth_event()
        perf intel-pt: Tidy Intel PT evsel lookup into separate function
        perf intel-pt: Join needlessly wrapped lines
        perf intel-pt: Remove unused instructions_sample_period
        perf intel-pt: Factor out common code synthesizing event samples
        perf script: Add synthesized Intel PT power and ptwrite events
        perf/x86/intel: Constify the 'lbr_desc[]' array and make a function static
        perf script: Add 'synth' field for synthesized event payloads
        perf auxtrace: Add itrace option to output power events
        perf auxtrace: Add itrace option to output ptwrite events
        tools include: Add byte-swapping macros to kernel.h
        perf script: Add 'synth' event type for synthesized events
        x86/insn: perf tools: Add new ptwrite instruction
        ...
      7447d562
    • Linus Torvalds's avatar
      Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 892ad5ac
      Linus Torvalds authored
      Pull locking updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - Add CONFIG_REFCOUNT_FULL=y to allow the disabling of the 'full'
           (robustness checked) refcount_t implementation with slightly lower
           runtime overhead. (Kees Cook)
      
           The lighter weight variant is the default. The two variants use the
           same API. Having this variant was a precondition by some
           maintainers to merge refcount_t cleanups.
      
         - Add lockdep support for rtmutexes (Peter Zijlstra)
      
         - liblockdep fixes and improvements (Sasha Levin, Ben Hutchings)
      
         - ... misc fixes and improvements"
      
      * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (30 commits)
        locking/refcount: Remove the half-implemented refcount_sub() API
        locking/refcount: Create unchecked atomic_t implementation
        locking/rtmutex: Don't initialize lockdep when not required
        locking/selftest: Add RT-mutex support
        locking/selftest: Remove the bad unlock ordering test
        rt_mutex: Add lockdep annotations
        MAINTAINERS: Claim atomic*_t maintainership
        locking/x86: Remove the unused atomic_inc_short() methd
        tools/lib/lockdep: Remove private kernel headers
        tools/lib/lockdep: Hide liblockdep output from test results
        tools/lib/lockdep: Add dummy current_gfp_context()
        tools/include: Add IS_ERR_OR_NULL to err.h
        tools/lib/lockdep: Add empty __is_[module,kernel]_percpu_address
        tools/lib/lockdep: Include err.h
        tools/include: Add (mostly) empty include/linux/sched/mm.h
        tools/lib/lockdep: Use LDFLAGS
        tools/lib/lockdep: Remove double-quotes from soname
        tools/lib/lockdep: Fix object file paths used in an out-of-tree build
        tools/lib/lockdep: Fix compilation for 4.11
        tools/lib/lockdep: Don't mix fd-based and stream IO
        ...
      892ad5ac
    • Linus Torvalds's avatar
      Merge branch 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 162b246e
      Linus Torvalds authored
      Pull EFI updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - Rework the EFI capsule loader to allow for workarounds for
           non-compliant firmware (Ard Biesheuvel)
      
         - Implement a capsule loader quirk for Quark X102x (Jan Kiszka)
      
         - Enable SMBIOS/DMI support for the ARM architecture (Ard Biesheuvel)
      
         - Add CONFIG_EFI_PGT_DUMP=y support for x86-32 and kexec (Sai
           Praneeth)
      
         - Fixes for EFI support for Xen dom0 guests running under x86-64
           hosts (Daniel Kiper)"
      
      * 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/xen/efi: Initialize only the EFI struct members used by Xen
        efi: Process the MEMATTR table only if EFI_MEMMAP is enabled
        efi/arm: Enable DMI/SMBIOS
        x86/efi: Extend CONFIG_EFI_PGT_DUMP support to x86_32 and kexec as well
        efi/efi_test: Use memdup_user() helper
        efi/capsule: Add support for Quark security header
        efi/capsule-loader: Use page addresses rather than struct page pointers
        efi/capsule-loader: Redirect calls to efi_capsule_setup_info() via weak alias
        efi/capsule: Remove NULL test on kmap()
        efi/capsule-loader: Use a cached copy of the capsule header
        efi/capsule: Adjust return type of efi_capsule_setup_info()
        efi/capsule: Clean up pr_err/_info() messages
        efi/capsule: Remove pr_debug() on ENOMEM or EFAULT
        efi/capsule: Fix return code on failing kmap/vmap
      162b246e
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 330e9e46
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "The sole purpose of these changes is to shrink and simplify the RCU
        code base, which has suffered from creeping bloat over the past couple
        of years. The end result is a net removal of ~2700 lines of code:
      
           79 files changed, 1496 insertions(+), 4211 deletions(-)
      
        Plus there's a marked reduction in the Kconfig space complexity as
        well, here's the number of matches on 'grep RCU' in the .config:
      
                                     before       after
      
           x86-defconfig                 17          15
           x86-allmodconfig              33          20"
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (86 commits)
        rcu: Remove RCU CPU stall warnings from Tiny RCU
        rcu: Remove event tracing from Tiny RCU
        rcu: Move RCU debug Kconfig options to kernel/rcu
        rcu: Move RCU non-debug Kconfig options to kernel/rcu
        rcu: Eliminate NOCBs CPU-state Kconfig options
        rcu: Remove debugfs tracing
        srcu: Remove Classic SRCU
        srcu: Fix rcutorture-statistics typo
        rcu: Remove SPARSE_RCU_POINTER Kconfig option
        rcu: Remove the now-obsolete PROVE_RCU_REPEATEDLY Kconfig option
        rcu: Remove typecheck() from RCU locking wrapper functions
        rcu: Remove #ifdef moving rcu_end_inkernel_boot from rcupdate.h
        rcu: Remove nohz_full full-system-idle state machine
        rcu: Remove the RCU_KTHREAD_PRIO Kconfig option
        rcu: Remove *_SLOW_* Kconfig options
        srcu: Use rnp->lock wrappers to replace explicit memory barriers
        rcu: Move rnp->lock wrappers for SRCU use
        rcu: Convert rnp->lock wrappers to macros for SRCU use
        rcu: Refactor #includes from include/linux/rcupdate.h
        bcm47xx: Fix build regression
        ...
      330e9e46
    • Linus Torvalds's avatar
      Merge branch 'core-objtool-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e94693f7
      Linus Torvalds authored
      Pull objtool updates from Ingo Molnar:
       "This is an extensive rewrite of the objdump tool to track all stack
        pointer modifications through the machine instructions of disassembled
        functions found in kernel .o files.
      
        This re-design removes the prior dependency on CONFIG_FRAME_POINTERS,
        with the goal to prepare the tool to generate kernel debuginfo data in
        the future. There's also an increase in checking/tracking robustness
        as a side effect as well.
      
        No (intended) changes to existing functionality"
      
      * 'core-objtool-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Silence warnings for functions which use IRET
        objtool: Implement stack validation 2.0
        objtool, x86: Add several functions and files to the objtool whitelist
        objtool: Move checking code to check.c
      e94693f7
    • Linus Torvalds's avatar
      Merge tag 'edac_for_4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 26d3a77d
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
       "Nothing earth-shattering - just the normal development flow of
        cleanups, improvements, fixes and such.
      
        Summary:
      
         - i31200_edac: Add Kabylake support (Jason Baron)
      
         - sb_edac: resolve memory controller detection issues on asymmetric
           setups with not all DIMM slots being populated (Tony Luck and Qiuxu
           Zhuo)
      
         - misc cleanups and fixlets all over"
      
      * tag 'edac_for_4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: (22 commits)
        EDAC, pnd2: Fix Apollo Lake DIMM detection
        EDAC, i5000, i5400: Fix definition of NRECMEMB register
        EDAC, pnd2: Make function sbi_send() static
        EDAC, pnd2: Return proper error value from apl_rd_reg()
        EDAC, altera: Simplify calculation of total memory
        EDAC, sb_edac: Avoid creating SOCK memory controller
        EDAC, mce_amd: Fix typo in SMCA error description
        EDAC, mv64x60: Sanity check edac_op_state before registering
        EDAC, thunderx: Fix a warning during l2c debugfs node creation
        EDAC, mv64x60: Check driver registration success
        EDAC, ie31200: Add Intel Kaby Lake CPU support
        EDAC, mv64x60: Replace in_le32()/out_le32() with readl()/writel()
        EDAC, mv64x60: Fix pdata->name
        EDAC, sb_edac: Bump driver version and do some cleanups
        EDAC, sb_edac: Check if ECC enabled when at least one DIMM is present
        EDAC, sb_edac: Drop NUM_CHANNELS from 8 back to 4
        EDAC, sb_edac: Carve out dimm-populating loop
        EDAC, sb_edac: Fix mod_name
        EDAC, sb_edac: Assign EDAC memory controller per h/w controller
        EDAC, sb_edac: Don't use "Socket#" in the memory controller name
        ...
      26d3a77d
    • Linus Torvalds's avatar
      Merge branch 'for-4.13/block' of git://git.kernel.dk/linux-block · c6b1e36c
      Linus Torvalds authored
      Pull core block/IO updates from Jens Axboe:
       "This is the main pull request for the block layer for 4.13. Not a huge
        round in terms of features, but there's a lot of churn related to some
        core cleanups.
      
        Note this depends on the UUID tree pull request, that Christoph
        already sent out.
      
        This pull request contains:
      
         - A series from Christoph, unifying the error/stats codes in the
           block layer. We now use blk_status_t everywhere, instead of using
           different schemes for different places.
      
         - Also from Christoph, some cleanups around request allocation and IO
           scheduler interactions in blk-mq.
      
         - And yet another series from Christoph, cleaning up how we handle
           and do bounce buffering in the block layer.
      
         - A blk-mq debugfs series from Bart, further improving on the support
           we have for exporting internal information to aid debugging IO
           hangs or stalls.
      
         - Also from Bart, a series that cleans up the request initialization
           differences across types of devices.
      
         - A series from Goldwyn Rodrigues, allowing the block layer to return
           failure if we will block and the user asked for non-blocking.
      
         - Patch from Hannes for supporting setting loop devices block size to
           that of the underlying device.
      
         - Two series of patches from Javier, fixing various issues with
           lightnvm, particular around pblk.
      
         - A series from me, adding support for write hints. This comes with
           NVMe support as well, so applications can help guide data placement
           on flash to improve performance, latencies, and write
           amplification.
      
         - A series from Ming, improving and hardening blk-mq support for
           stopping/starting and quiescing hardware queues.
      
         - Two pull requests for NVMe updates. Nothing major on the feature
           side, but lots of cleanups and bug fixes. From the usual crew.
      
         - A series from Neil Brown, greatly improving the bio rescue set
           support. Most notably, this kills the bio rescue work queues, if we
           don't really need them.
      
         - Lots of other little bug fixes that are all over the place"
      
      * 'for-4.13/block' of git://git.kernel.dk/linux-block: (217 commits)
        lightnvm: pblk: set line bitmap check under debug
        lightnvm: pblk: verify that cache read is still valid
        lightnvm: pblk: add initialization check
        lightnvm: pblk: remove target using async. I/Os
        lightnvm: pblk: use vmalloc for GC data buffer
        lightnvm: pblk: use right metadata buffer for recovery
        lightnvm: pblk: schedule if data is not ready
        lightnvm: pblk: remove unused return variable
        lightnvm: pblk: fix double-free on pblk init
        lightnvm: pblk: fix bad le64 assignations
        nvme: Makefile: remove dead build rule
        blk-mq: map all HWQ also in hyperthreaded system
        nvmet-rdma: register ib_client to not deadlock in device removal
        nvme_fc: fix error recovery on link down.
        nvmet_fc: fix crashes on bad opcodes
        nvme_fc: Fix crash when nvme controller connection fails.
        nvme_fc: replace ioabort msleep loop with completion
        nvme_fc: fix double calls to nvme_cleanup_cmd()
        nvme-fabrics: verify that a controller returns the correct NQN
        nvme: simplify nvme_dev_attrs_are_visible
        ...
      c6b1e36c
    • Linus Torvalds's avatar
      Merge tag 'uuid-for-4.13' of git://git.infradead.org/users/hch/uuid · 81e3e044
      Linus Torvalds authored
      Pull uuid subsystem from Christoph Hellwig:
       "This is the new uuid subsystem, in which Amir, Andy and I have started
        consolidating our uuid/guid helpers and improving the types used for
        them. Note that various other subsystems have pulled in this tree, so
        I'd like it to go in early.
      
        UUID/GUID summary:
      
         - introduce the new uuid_t/guid_t types that are going to replace the
           somewhat confusing uuid_be/uuid_le types and make the terminology
           fit the various specs, as well as the userspace libuuid library.
           (me, based on a previous version from Amir)
      
         - consolidated generic uuid/guid helper functions lifted from XFS and
           libnvdimm (Amir and me)
      
         - conversions to the new types and helpers (Amir, Andy and me)"
      
      * tag 'uuid-for-4.13' of git://git.infradead.org/users/hch/uuid: (34 commits)
        ACPI: hns_dsaf_acpi_dsm_guid can be static
        mmc: sdhci-pci: make guid intel_dsm_guid static
        uuid: Take const on input of uuid_is_null() and guid_is_null()
        thermal: int340x_thermal: fix compile after the UUID API switch
        thermal: int340x_thermal: Switch to use new generic UUID API
        acpi: always include uuid.h
        ACPI: Switch to use generic guid_t in acpi_evaluate_dsm()
        ACPI / extlog: Switch to use new generic UUID API
        ACPI / bus: Switch to use new generic UUID API
        ACPI / APEI: Switch to use new generic UUID API
        acpi, nfit: Switch to use new generic UUID API
        MAINTAINERS: add uuid entry
        tmpfs: generate random sb->s_uuid
        scsi_debug: switch to uuid_t
        nvme: switch to uuid_t
        sysctl: switch to use uuid_t
        partitions/ldm: switch to use uuid_t
        overlayfs: use uuid_t instead of uuid_be
        fs: switch ->s_uuid to uuid_t
        ima/policy: switch to use uuid_t
        ...
      81e3e044
    • Thomas Bogendoerfer's avatar
      parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs · 33f9e024
      Thomas Bogendoerfer authored
      Enabling parport pc driver on a B2600 (and probably other 64bit PARISC
      systems) produced following BUG:
      
      CPU: 0 PID: 1 Comm: swapper Not tainted 4.12.0-rc5-30198-g1132d5e7 #156
      task: 000000009e050000 task.stack: 000000009e04c000
      
           YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
      PSW: 00001000000001101111111100001111 Not tainted
      r00-03  000000ff0806ff0f 000000009e04c990 0000000040871b78 000000009e04cac0
      r04-07  0000000040c14de0 ffffffffffffffff 000000009e07f098 000000009d82d200
      r08-11  000000009d82d210 0000000000000378 0000000000000000 0000000040c345e0
      r12-15  0000000000000005 0000000040c345e0 0000000000000000 0000000040c9d5e0
      r16-19  0000000040c345e0 00000000f00001c4 00000000f00001bc 0000000000000061
      r20-23  000000009e04ce28 0000000000000010 0000000000000010 0000000040b89e40
      r24-27  0000000000000003 0000000000ffffff 000000009d82d210 0000000040c14de0
      r28-31  0000000000000000 000000009e04ca90 000000009e04cb40 0000000000000000
      sr00-03  0000000000000000 0000000000000000 0000000000000000 0000000000000000
      sr04-07  0000000000000000 0000000000000000 0000000000000000 0000000000000000
      
      IASQ: 0000000000000000 0000000000000000 IAOQ: 00000000404aece0 00000000404aece4
       IIR: 03ffe01f    ISR: 0000000010340000  IOR: 000001781304cac8
       CPU:        0   CR30: 000000009e04c000 CR31: 00000000e2976de2
       ORIG_R28: 0000000000000200
       IAOQ[0]: sba_dma_supported+0x80/0xd0
       IAOQ[1]: sba_dma_supported+0x84/0xd0
       RP(r2): parport_pc_probe_port+0x178/0x1200
      
      Cause is a call to dma_coerce_mask_and_coherenet in parport_pc_probe_port,
      which PARISC DMA API doesn't handle very nicely. This commit gives back
      DMA_ERROR_CODE for DMA API calls, if device isn't capable of DMA
      transaction.
      
      Cc: <stable@vger.kernel.org> # v3.13+
      Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      33f9e024
  2. 02 Jul, 2017 7 commits
  3. 01 Jul, 2017 6 commits
  4. 30 Jun, 2017 5 commits
    • Zack Weinberg's avatar
      uapi/linux/a.out.h: don't use deprecated system-specific predefines. · fbd57629
      Zack Weinberg authored
      uapi/linux/a.out.h uses a number of predefined macros that are
      deprecated because they're in the application namespace
      (e.g. '#ifdef linux' instead of '#ifdef __linux__').
      This patch either corrects or just removes them if they are not
      applicable to Linux.
      
      The primary reason this is worth bothering to fix, considering how
      obsolete a.out binary support is, is that the GCC build process
      considers this such a severe error that it will copy the header into a
      private directory and change the macro names, which causes future
      updates to the header to be masked.  This header probably doesn't get
      updated very often anymore, but it is the _only_ uapi header that gets
      this treatment, so IMHO it is worth patching just to drive that number
      all the way to zero.
      Signed-off-by: default avatarZack Weinberg <zackw@panix.com>
      [hch: removed dead conditionals]
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fbd57629
    • Jakub Kicinski's avatar
      hashtable: remove repeated phrase from a comment · dbd18777
      Jakub Kicinski authored
      "in a rcu enabled hashtable" is repeated twice in a comment.
      Signed-off-by: default avatarJakub Kicinski <jakub.kicinski@netronome.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dbd18777
    • Vikas Shivappa's avatar
      x86/intel_rdt: Fix memory leak on mount failure · 79298acc
      Vikas Shivappa authored
      If mount fails, the kn_info directory is not freed causing memory leak.
      
      Add the missing error handling path.
      
      Fixes: 4e978d06 ("x86/intel_rdt: Add "info" files to resctrl file system")
      Signed-off-by: default avatarVikas Shivappa <vikas.shivappa@linux.intel.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: ravi.v.shankar@intel.com
      Cc: tony.luck@intel.com
      Cc: fenghua.yu@intel.com
      Cc: peterz@infradead.org
      Cc: vikas.shivappa@intel.com
      Cc: andi.kleen@intel.com
      Cc: stable@vger.kernel.org
      Link: http://lkml.kernel.org/r/1498503368-20173-3-git-send-email-vikas.shivappa@linux.intel.com
      79298acc
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.12-8' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · b4df2e35
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       "Hopefully the last two powerpc fixes for 4.12.
      
        The CXL one is larger than I'd usually send at rc7, but it fixes new
        code this cycle, so better to have it working for the release. It was
        actually sent a few weeks back but got blocked in testing behind
        another fix that was causing issues.
      
        We are still tracking one crash in v4.12-rc7, but only one person has
        reproduced it and the commit identified by bisect doesn't touch any of
        the relevant code, so I think it's 50/50 whether that commit is
        actually the problem or it's some code layout / toolchain issue.
      
        Two fixes for code we merged this cycle:
      
         - cxl: Fixes for Coherent Accelerator Interface Architecture 2.0
      
         - Avoid miscompilation w/GCC 4.6.3 on 32-bit - don't inline
           copy_to/from_user()
      
        Thanks to Al Viro, Larry Finger, Christophe Lombard"
      
      * tag 'powerpc-4.12-8' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/32: Avoid miscompilation w/GCC 4.6.3 - don't inline copy_to/from_user()
        cxl: Fixes for Coherent Accelerator Interface Architecture 2.0
      b4df2e35
    • Josh Poimboeuf's avatar
      objtool: Silence warnings for functions which use IRET · 2513cbf9
      Josh Poimboeuf authored
      Previously, objtool ignored functions which have the IRET instruction
      in them.  That's because it assumed that such functions know what
      they're doing with respect to frame pointers.
      
      With the new "objtool 2.0" changes, it stopped ignoring such functions,
      and started complaining about them:
      
        arch/x86/kernel/alternative.o: warning: objtool: do_sync_core()+0x1b: unsupported instruction in callable function
        arch/x86/kernel/alternative.o: warning: objtool: text_poke()+0x1a8: unsupported instruction in callable function
        arch/x86/kernel/ftrace.o: warning: objtool: do_sync_core()+0x16: unsupported instruction in callable function
        arch/x86/kernel/cpu/mcheck/mce.o: warning: objtool: machine_check_poll()+0x166: unsupported instruction in callable function
        arch/x86/kernel/cpu/mcheck/mce.o: warning: objtool: do_machine_check()+0x147: unsupported instruction in callable function
      
      Silence those warnings for now.  They can be re-enabled later, once we
      have unwind hints which will allow the code to annotate the IRET usages.
      Reported-by: default avatarIngo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Jiri Slaby <jslaby@suse.cz>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: live-patching@vger.kernel.org
      Fixes: baa41469 ("objtool: Implement stack validation 2.0")
      Link: http://lkml.kernel.org/r/20170630140934.mmwtpockvpupahro@trebleSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      2513cbf9