01 Sep, 2015

26 commits

  • Pull x86 asm changes from Ingo Molnar:
    "The biggest changes in this cycle were:

    - Revamp, simplify (and in some cases fix) Time Stamp Counter (TSC)
    primitives. (Andy Lutomirski)

    - Add new, comprehensible entry and exit handlers written in C.
    (Andy Lutomirski)

    - vm86 mode cleanups and fixes. (Brian Gerst)

    - 32-bit compat code cleanups. (Brian Gerst)

    The amount of simplification in low level assembly code is already
    palpable:

    arch/x86/entry/entry_32.S | 130 +----
    arch/x86/entry/entry_64.S | 197 ++-----

    but more simplifications are planned.

    There's also the usual laudry mix of low level changes - see the
    changelog for details"

    * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (83 commits)
    x86/asm: Drop repeated macro of X86_EFLAGS_AC definition
    x86/asm/msr: Make wrmsrl() a function
    x86/asm/delay: Introduce an MWAITX-based delay with a configurable timer
    x86/asm: Add MONITORX/MWAITX instruction support
    x86/traps: Weaken context tracking entry assertions
    x86/asm/tsc: Add rdtscll() merge helper
    selftests/x86: Add syscall_nt selftest
    selftests/x86: Disable sigreturn_64
    x86/vdso: Emit a GNU hash
    x86/entry: Remove do_notify_resume(), syscall_trace_leave(), and their TIF masks
    x86/entry/32: Migrate to C exit path
    x86/entry/32: Remove 32-bit syscall audit optimizations
    x86/vm86: Rename vm86->v86flags and v86mask
    x86/vm86: Rename vm86->vm86_info to user_vm86
    x86/vm86: Clean up vm86.h includes
    x86/vm86: Move the vm86 IRQ definitions to vm86.h
    x86/vm86: Use the normal pt_regs area for vm86
    x86/vm86: Eliminate 'struct kernel_vm86_struct'
    x86/vm86: Move fields from 'struct kernel_vm86_struct' to 'struct vm86'
    x86/vm86: Move vm86 fields out of 'thread_struct'
    ...

    Linus Torvalds
     
  • Pull NOHZ updates from Ingo Molnar:
    "The main changes, mostly written by Frederic Weisbecker, include:

    - Fix some jiffies based cputime assumptions. (No real harm because
    the concerned code isn't used by full dynticks.)

    - Simplify jiffies usecs conversions. Remove dead code.

    - Remove early hacks on nohz full code that avoided messing up idle
    nohz internals. Now nohz integrates well full and idle and such
    hack have become needless.

    - Restart nohz full tick from irq exit. (A simplification and a
    preparation for future optimization on scheduler kick to nohz
    full)

    - Code cleanups.

    - Tile driver isolation enhancement on top of nohz. (Chris Metcalf)"

    * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    nohz: Remove useless argument on tick_nohz_task_switch()
    nohz: Move tick_nohz_restart_sched_tick() above its users
    nohz: Restart nohz full tick from irq exit
    nohz: Remove idle task special case
    nohz: Prevent tilegx network driver interrupts
    alpha: Fix jiffies based cputime assumption
    apm32: Fix cputime == jiffies assumption
    jiffies: Remove HZ > USEC_PER_SEC special case

    Linus Torvalds
     
  • Pull scheduler fix from Ingo Molnar:
    "This is a leftover scheduler fix from the v4.2 cycle"

    * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    sched: Fix cpu_active_mask/cpu_online_mask race

    Linus Torvalds
     
  • Pull scheduler updates from Ingo Molnar:
    "The biggest change in this cycle is the rewrite of the main SMP load
    balancing metric: the CPU load/utilization. The main goal was to make
    the metric more precise and more representative - see the changelog of
    this commit for the gory details:

    9d89c257dfb9 ("sched/fair: Rewrite runnable load and utilization average tracking")

    It is done in a way that significantly reduces complexity of the code:

    5 files changed, 249 insertions(+), 494 deletions(-)

    and the performance testing results are encouraging. Nevertheless we
    need to keep an eye on potential regressions, since this potentially
    affects every SMP workload in existence.

    This work comes from Yuyang Du.

    Other changes:

    - SCHED_DL updates. (Andrea Parri)

    - Simplify architecture callbacks by removing finish_arch_switch().
    (Peter Zijlstra et al)

    - cputime accounting: guarantee stime + utime == rtime. (Peter
    Zijlstra)

    - optimize idle CPU wakeups some more - inspired by Facebook server
    loads. (Mike Galbraith)

    - stop_machine fixes and updates. (Oleg Nesterov)

    - Introduce the 'trace_sched_waking' tracepoint. (Peter Zijlstra)

    - sched/numa tweaks. (Srikar Dronamraju)

    - misc fixes and small cleanups"

    * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
    sched/deadline: Fix comment in enqueue_task_dl()
    sched/deadline: Fix comment in push_dl_tasks()
    sched: Change the sched_class::set_cpus_allowed() calling context
    sched: Make sched_class::set_cpus_allowed() unconditional
    sched: Fix a race between __kthread_bind() and sched_setaffinity()
    sched: Ensure a task has a non-normalized vruntime when returning back to CFS
    sched/numa: Fix NUMA_DIRECT topology identification
    tile: Reorganize _switch_to()
    sched, sparc32: Update scheduler comments in copy_thread()
    sched: Remove finish_arch_switch()
    sched, tile: Remove finish_arch_switch
    sched, sh: Fold finish_arch_switch() into switch_to()
    sched, score: Remove finish_arch_switch()
    sched, avr32: Remove finish_arch_switch()
    sched, MIPS: Get rid of finish_arch_switch()
    sched, arm: Remove finish_arch_switch()
    sched/fair: Clean up load average references
    sched/fair: Provide runnable_load_avg back to cfs_rq
    sched/fair: Remove task and group entity load when they are dead
    sched/fair: Init cfs_rq's sched_entity load average
    ...

    Linus Torvalds
     
  • Pull RAS updates from Ingo Molnar:
    "MCE handling updates, but also some generic drivers/edac/ changes to
    better organize the Kconfig space"

    * 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/ras: Move AMD MCE injector to arch/x86/ras/
    x86/mce: Add a wrapper around mce_log() for injection
    x86/mce: Rename rcu_dereference_check_mce() to mce_log_get_idx_check()
    RAS: Add a menuconfig option with descriptive text
    x86/mce: Reenable CMCI banks when swiching back to interrupt mode
    x86/mce: Clear Local MCE opt-in before kexec
    x86/mce: Remove unused function declarations
    x86/mce: Kill drain_mcelog_buffer()
    x86/mce: Avoid potential deadlock due to printk() in MCE context
    x86/mce: Remove the MCE ring for Action Optional errors
    x86/mce: Don't use percpu workqueues
    x86/mce: Provide a lockless memory pool to save error records
    x86/mce: Reuse one of the u16 padding fields in 'struct mce'

    Linus Torvalds
     
  • Pull perf updates from Ingo Molnar:
    "Main perf kernel side changes:

    - uprobes updates/fixes. (Oleg Nesterov)

    - Add PERF_RECORD_SWITCH to indicate context switches and use it in
    tooling. (Adrian Hunter)

    - Support BPF programs attached to uprobes and first steps for BPF
    tooling support. (Wang Nan)

    - x86 generic x86 MSR-to-perf PMU driver. (Andy Lutomirski)

    - x86 Intel PT, LBR and BTS updates. (Alexander Shishkin)

    - x86 Intel Skylake support. (Andi Kleen)

    - x86 Intel Knights Landing (KNL) RAPL support. (Dasaratharaman
    Chandramouli)

    - x86 Intel Broadwell-DE uncore support. (Kan Liang)

    - x86 hw breakpoints robustization (Andy Lutomirski)

    Main perf tooling side changes:

    - Support Intel PT in several tools, enabling the use of the
    processor trace feature introduced in Intel Broadwell processors:
    (Adrian Hunter)

    # dmesg | grep Performance
    # [0.188477] Performance Events: PEBS fmt2+, 16-deep LBR, Broadwell events, full-width counters, Intel PMU driver.
    # perf record -e intel_pt//u -a sleep 1
    [ perf record: Woken up 1 times to write data ]
    [ perf record: Captured and wrote 0.216 MB perf.data ]
    # perf script # then navigate in the tool output to some area, like this one:
    184 1030 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba661440 dl_main (/usr/lib64/ld-2.17.so)
    185 1457 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba669f10 _dl_new_object (/usr/lib64/ld-2.17.so)
    186 9f37 _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba677b90 strlen (/usr/lib64/ld-2.17.so)
    187 7ba3 strlen (/usr/lib64/ld-2.17.so) => 7f21ba677c75 strlen (/usr/lib64/ld-2.17.so)
    188 7c78 strlen (/usr/lib64/ld-2.17.so) => 7f21ba669f3c _dl_new_object (/usr/lib64/ld-2.17.so)
    189 9f8a _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba65fab0 calloc@plt (/usr/lib64/ld-2.17.so)
    190 fab0 calloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e70 calloc (/usr/lib64/ld-2.17.so)
    191 5e87 calloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa90 malloc@plt (/usr/lib64/ld-2.17.so)
    192 fa90 malloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e60 malloc (/usr/lib64/ld-2.17.so)
    193 5e68 malloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa80 __libc_memalign@plt (/usr/lib64/ld-2.17.so)
    194 fa80 __libc_memalign@plt (/usr/lib64/ld-2.17.so) => 7f21ba675d50 __libc_memalign (/usr/lib64/ld-2.17.so)
    195 5d63 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e20 __libc_memalign (/usr/lib64/ld-2.17.so)
    196 5e40 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675d73 __libc_memalign (/usr/lib64/ld-2.17.so)
    197 5d97 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e18 __libc_memalign (/usr/lib64/ld-2.17.so)
    198 5e1e __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675df9 __libc_memalign (/usr/lib64/ld-2.17.so)
    199 5e10 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba669f8f _dl_new_object (/usr/lib64/ld-2.17.so)
    200 9fc2 _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba678e70 memcpy (/usr/lib64/ld-2.17.so)
    201 8e8c memcpy (/usr/lib64/ld-2.17.so) => 7f21ba678ea0 memcpy (/usr/lib64/ld-2.17.so)

    - Add support for using several Intel PT features (CYC, MTC packets),
    the relevant documentation was updated in:
    tools/perf/Documentation/intel-pt.txt
    briefly describing those packets, its purposes, how to configure
    them in the event config terms and relevant external documentation
    for further reading. (Adrian Hunter)

    - Introduce support for probing at an absolute address, for user and
    kernel 'perf probe's, useful when one have the symbol maps on a
    developer machine but not on an embedded system. (Wang Nan)

    - Add Intel BTS support, with a call-graph script to show it and PT
    in use in a GUI using 'perf script' python scripting with
    postgresql and Qt. (Adrian Hunter)

    - Allow selecting the type of callchains per event, including
    disabling callchains in all but one entry in an event list, to save
    space, and also to ask for the callchains collected in one event to
    be used in other events. (Kan Liang)

    - Beautify more syscall arguments in 'perf trace': (Arnaldo Carvalho
    de Melo)
    * A bunch more translate file/pathnames from pointers to strings.
    * Convert numbers to strings for the 'keyctl' syscall 'option'
    arg.
    * Add missing 'clockid' entries.

    - Introduce 'srcfile' sort key: (Andi Kleen)

    # perf record -F 10000 usleep 1
    # perf report --stdio --dsos '[kernel.vmlinux]' -s srcfile

    # Overhead Source File
    26.49% copy_page_64.S
    5.49% signal.c
    0.51% msr.h
    #

    It can be combined with other fields, for instance, experiment with
    '-s srcfile,symbol'.

    There are some oddities in some distros and with some specific
    DSOs, being investigated, so your mileage may vary.

    - Support per-event 'freq' term: (Namhyung Kim)

    $ perf record -e 'cpu/instructions,freq=1234/',cycles -c 1000 sleep 1
    $ perf evlist -F
    cpu/instructions,freq=1234/: sample_freq=1234
    cycles: sample_period=1000
    $

    - Deref sys_enter pointer args with contents from probe:vfs_getname,
    showing pathnames instead of pointers in many syscalls in 'perf
    trace'. (Arnaldo Carvalho de Melo)

    - Stop collecting /proc/kallsyms in perf.data files, saving about
    4.5MB on a typical x86-64 system, use the the symbol resolution
    routines used in all the other tools (report, top, etc) now that we
    can ask libtraceevent to use perf's symbol resolution code.
    (Arnaldo Carvalho de Melo)

    - Allow filtering out of perf's PID via 'perf record --exclude-perf'.
    (Wang Nan)

    - 'perf trace' now supports syscall groups, like strace, i.e:

    $ trace -e file touch file

    Will expand 'file' into multiple, file related, syscalls. More
    work needed to add extra groups for other syscall groups, and also
    to complement what was added for the 'file' group, included as a
    proof of concept. (Arnaldo Carvalho de Melo)

    - Add lock_pi stresser to 'perf bench futex', to test the kernel code
    related to FUTEX_(UN)LOCK_PI. (Davidlohr Bueso)

    - Let user have timestamps with per-thread recording in 'perf record'
    (Adrian Hunter)

    - ... and tons of other changes, see the shortlog and the Git log for
    details"

    * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (240 commits)
    perf evlist: Add backpointer for perf_env to evlist
    perf tools: Rename perf_session_env to perf_env
    perf tools: Do not change lib/api/fs/debugfs directly
    perf tools: Add tracing_path and remove unneeded functions
    perf buildid: Introduce sysfs/filename__sprintf_build_id
    perf evsel: Add a backpointer to the evlist a evsel is in
    perf trace: Add header with copyright and background info
    perf scripts python: Add new compaction-times script
    perf stat: Get correct cpu id for print_aggr
    tools lib traceeveent: Allow for negative numbers in print format
    perf script: Add --[no-]-demangle/--[no-]-demangle-kernel
    tracing/uprobes: Do not print '0x (null)' when offset is 0
    perf probe: Support probing at absolute address
    perf probe: Fix error reported when offset without function
    perf probe: Fix list result when address is zero
    perf probe: Fix list result when symbol can't be found
    tools build: Allow duplicate objects in the object list
    perf tools: Remove export.h from MANIFEST
    perf probe: Prevent segfault when reading probe point with absolute address
    perf tools: Update Intel PT documentation
    ...

    Linus Torvalds
     
  • Pull x86/kasan changes from Ingo Molnar:
    "These are two KASAN changes that factor out (and generalize) x86
    specific KASAN code from x86 to mm"

    * 'mm-kasan-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/kasan, mm: Introduce generic kasan_populate_zero_shadow()
    x86/kasan: Define KASAN_SHADOW_OFFSET per architecture

    Linus Torvalds
     
  • Pull liblockdep fixes from Ingo Molnar:
    "Three liblockdep fixes left over from the v4.2 cycle"

    * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    tools/liblockdep: Use the rbtree header provided by common tools headers
    tools/liblockdep: Correct macro for WARN
    tools: Restore export.h

    Linus Torvalds
     
  • Pull inlining tuning from Ingo Molnar:
    "A handful of inlining optimizations inspired by x86 work but
    applicable in general"

    * 'core-types-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    jiffies: Force inlining of {m,u}msecs_to_jiffies()
    x86/hweight: Force inlining of __arch_hweight{32,64}()
    linux/bitmap: Force inlining of bitmap weight functions

    Linus Torvalds
     
  • Pull RCU updates from Ingo Molnar:
    "The main RCU changes in this cycle are:

    - the combination of tree geometry-initialization simplifications and
    OS-jitter-reduction changes to expedited grace periods. These two
    are stacked due to the large number of conflicts that would
    otherwise result.

    - privatize smp_mb__after_unlock_lock().

    This commit moves the definition of smp_mb__after_unlock_lock() to
    kernel/rcu/tree.h, in recognition of the fact that RCU is the only
    thing using this, that nothing else is likely to use it, and that
    it is likely to go away completely.

    - documentation updates.

    - torture-test updates.

    - misc fixes"

    * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (60 commits)
    rcu,locking: Privatize smp_mb__after_unlock_lock()
    rcu: Silence lockdep false positive for expedited grace periods
    rcu: Don't disable CPU hotplug during OOM notifiers
    scripts: Make checkpatch.pl warn on expedited RCU grace periods
    rcu: Update MAINTAINERS entry
    rcu: Clarify CONFIG_RCU_EQS_DEBUG help text
    rcu: Fix backwards RCU_LOCKDEP_WARN() in synchronize_rcu_tasks()
    rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
    rcu: Make rcu_is_watching() really notrace
    cpu: Wait for RCU grace periods concurrently
    rcu: Create a synchronize_rcu_mult()
    rcu: Fix obsolete priority-boosting comment
    rcu: Use WRITE_ONCE in RCU_INIT_POINTER
    rcu: Hide RCU_NOCB_CPU behind RCU_EXPERT
    rcu: Add RCU-sched flavors of get-state and cond-sync
    rcu: Add fastpath bypassing funnel locking
    rcu: Rename RCU_GP_DONE_FQS to RCU_GP_DOING_FQS
    rcu: Pull out wait_event*() condition into helper function
    documentation: Describe new expedited stall warnings
    rcu: Add stall warnings to synchronize_sched_expedited()
    ...

    Linus Torvalds
     
  • Pull crypto updates from Herbert Xu:
    "Here is the crypto update for 4.3:

    API:

    - the AEAD interface transition is now complete.
    - add top-level skcipher interface.

    Drivers:

    - x86-64 acceleration for chacha20/poly1305.
    - add sunxi-ss Allwinner Security System crypto accelerator.
    - add RSA algorithm to qat driver.
    - add SRIOV support to qat driver.
    - add LS1021A support to caam.
    - add i.MX6 support to caam"

    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (163 commits)
    crypto: algif_aead - fix for multiple operations on AF_ALG sockets
    crypto: qat - enable legacy VFs
    MPI: Fix mpi_read_buffer
    crypto: qat - silence a static checker warning
    crypto: vmx - Fixing opcode issue
    crypto: caam - Use the preferred style for memory allocations
    crypto: caam - Propagate the real error code in caam_probe
    crypto: caam - Fix the error handling in caam_probe
    crypto: caam - fix writing to JQCR_MS when using service interface
    crypto: hash - Add AHASH_REQUEST_ON_STACK
    crypto: testmgr - Use new skcipher interface
    crypto: skcipher - Add top-level skcipher interface
    crypto: cmac - allow usage in FIPS mode
    crypto: sahara - Use dmam_alloc_coherent
    crypto: caam - Add support for LS1021A
    crypto: qat - Don't move data inside output buffer
    crypto: vmx - Fixing GHASH Key issue on little endian
    crypto: vmx - Fixing AES-CTR counter bug
    crypto: null - Add missing Kconfig tristate for NULL2
    crypto: nx - Add forward declaration for struct crypto_aead
    ...

    Linus Torvalds
     
  • Pull clk updates from Michael Turquette:
    "The clk framework changes for 4.3 are mostly updates to existing
    drivers and the addition of new clock drivers. Stephen Boyd has also
    done a lot of subsystem-wide driver clean-ups (thanks!). There are
    also fixes to the framework core and changes to better split clock
    provider drivers from clock consumer drivers"

    * tag 'clk-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (227 commits)
    clk: s5pv210: add missing call to samsung_clk_of_add_provider()
    clk: pistachio: correct critical clock list
    clk: pistachio: Fix PLL rate calculation in integer mode
    clk: pistachio: Fix override of clk-pll settings from boot loader
    clk: pistachio: Fix 32bit integer overflows
    clk: tegra: Fix some static checker problems
    clk: qcom: Fix MSM8916 prng clock enable bit
    clk: Add missing header for 'bool' definition to clk-conf.h
    drivers/clk: appropriate __init annotation for const data
    clk: rockchip: register pll mux before pll itself
    clk: add bindings for the Ux500 clocks
    clk/ARM: move Ux500 PRCC bases to the device tree
    clk: remove duplicated code with __clk_set_parent_after
    clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw)
    clk: Constify clk_hw argument to provider APIs
    clk: Hi6220: add stub clock driver
    dt-bindings: clk: Hi6220: Document stub clock driver
    dt-bindings: arm: Hi6220: add doc for SRAM controller
    clk: atlas7: fix pll missed divide NR in fraction mode
    clk: atlas7: fix bit field and its root clk for coresight_tpiu
    ...

    Linus Torvalds
     
  • Pull PCI updates from Bjorn Helgaas:
    "PCI changes for the v4.3 merge window:

    Enumeration:
    - Allocate ATS struct during enumeration (Bjorn Helgaas)
    - Embed ATS info directly into struct pci_dev (Bjorn Helgaas)
    - Reduce size of ATS structure elements (Bjorn Helgaas)
    - Stop caching ATS Invalidate Queue Depth (Bjorn Helgaas)
    - iommu/vt-d: Cache PCI ATS state and Invalidate Queue Depth (Bjorn Helgaas)
    - Move MPS configuration check to pci_configure_device() (Bjorn Helgaas)
    - Set MPS to match upstream bridge (Keith Busch)
    - ARM/PCI: Set MPS before pci_bus_add_devices() (Murali Karicheri)
    - Add pci_scan_root_bus_msi() (Lorenzo Pieralisi)
    - ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi() (Lorenzo Pieralisi)

    Resource management:
    - Call pci_read_bridge_bases() from core instead of arch code (Lorenzo Pieralisi)

    PCI device hotplug:
    - pciehp: Remove unused interrupt events (Bjorn Helgaas)
    - pciehp: Remove ignored MRL sensor interrupt events (Bjorn Helgaas)
    - pciehp: Handle invalid data when reading from non-existent devices (Jarod Wilson)
    - pciehp: Simplify pcie_poll_cmd() (Yijing Wang)
    - Use "slot" and "pci_slot" for struct hotplug_slot and struct pci_slot (Yijing Wang)
    - Protect pci_bus->slots with pci_slot_mutex, not pci_bus_sem (Yijing Wang)
    - Hold pci_slot_mutex while searching bus->slots list (Yijing Wang)

    Power management:
    - Disable async suspend/resume for JMicron multi-function SATA/AHCI (Zhang Rui)

    Virtualization:
    - Add ACS quirks for Intel I219-LM/V (Alex Williamson)
    - Restore ACS configuration as part of pci_restore_state() (Alexander Duyck)

    MSI:
    - Add pcibios_alloc_irq() and pcibios_free_irq() (Jiang Liu)
    - x86: Implement pcibios_alloc_irq() and pcibios_free_irq() (Jiang Liu)
    - Add helpers to manage pci_dev->irq and pci_dev->irq_managed (Jiang Liu)
    - Free legacy IRQ when enabling MSI/MSI-X (Jiang Liu)
    - ARM/PCI: Remove msi_controller from struct pci_sys_data (Lorenzo Pieralisi)
    - Remove unused pcibios_msi_controller() hook (Lorenzo Pieralisi)

    Generic host bridge driver:
    - Remove dependency on ARM-specific struct hw_pci (Jayachandran C)
    - Build setup-irq.o for arm64 (Jayachandran C)
    - Add arm64 support (Jayachandran C)

    APM X-Gene host bridge driver:
    - Add APM X-Gene PCIe 64-bit prefetchable window (Duc Dang)
    - Add support for a 64-bit prefetchable memory window (Duc Dang)
    - Drop owner assignment from platform_driver (Krzysztof Kozlowski)

    Broadcom iProc host bridge driver:
    - Allow BCMA bus driver to be built as module (Hauke Mehrtens)
    - Delete unnecessary checks before phy calls (Markus Elfring)
    - Add arm64 support (Ray Jui)

    Synopsys DesignWare host bridge driver:
    - Don't complain missing *config* reg space if va_cfg0 is set (Murali Karicheri)

    TI DRA7xx host bridge driver:
    - Disable pm_runtime on get_sync failure (Kishon Vijay Abraham I)
    - Add PM support (Kishon Vijay Abraham I)
    - Clear MSE bit during suspend so clocks will idle (Kishon Vijay Abraham I)
    - Add support to make GPIO drive PERST# line (Kishon Vijay Abraham I)

    Xilinx AXI host bridge driver:
    - Check for MSI interrupt flag before handling as INTx (Russell Joyce)

    Miscellaneous:
    - Fix Intersil/Techwell TW686[4589] AV capture class code (Krzysztof Hałasa)
    - Use PCI_CLASS_SERIAL_USB instead of bare number (Bjorn Helgaas)
    - Fix generic NCR 53c810 class code quirk (Bjorn Helgaas)
    - Fix TI816X class code quirk (Bjorn Helgaas)
    - Remove unused "pci_probe" flags (Bjorn Helgaas)
    - Host bridge driver code simplifications (Fabio Estevam)
    - Add dev_flags bit to access VPD through function 0 (Mark Rustad)
    - Add VPD function 0 quirk for Intel Ethernet devices (Mark Rustad)
    - Kill off set_irq_flags() usage (Rob Herring)
    - Remove Intel Cherrytrail D3 delays (Srinidhi Kasagar)
    - Clean up pci_find_capability() (Wei Yang)"

    * tag 'pci-v4.3-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (72 commits)
    PCI: Disable async suspend/resume for JMicron multi-function SATA/AHCI
    PCI: Set MPS to match upstream bridge
    PCI: Move MPS configuration check to pci_configure_device()
    PCI: Drop references acquired by of_parse_phandle()
    PCI/MSI: Remove unused pcibios_msi_controller() hook
    ARM/PCI: Remove msi_controller from struct pci_sys_data
    ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi()
    PCI: Add pci_scan_root_bus_msi()
    ARM/PCI: Replace panic with WARN messages on failures
    PCI: generic: Add arm64 support
    PCI: Build setup-irq.o for arm64
    PCI: generic: Remove dependency on ARM-specific struct hw_pci
    PCI: imx6: Simplify a trivial if-return sequence
    PCI: spear: Use BUG_ON() instead of condition followed by BUG()
    PCI: dra7xx: Remove unneeded use of IS_ERR_VALUE()
    PCI: Remove pci_ats_enabled()
    PCI: Stop caching ATS Invalidate Queue Depth
    PCI: Move ATS declarations to linux/pci.h so they're all together
    PCI: Clean up ATS error handling
    PCI: Use pci_physfn() rather than looking up physfn by hand
    ...

    Linus Torvalds
     
  • Pull LED updates from Jacek Anaszewski:
    "In this merge window we'd like to announce a change on the list of LED
    subsystem maintainers - Bryan Wu decided to step back and handed over
    the maintainership to me (Jacek Anaszewski), which entailed an update
    of LED subsystem git tree URL.

    Besides the changes in MAINTAINERS we have:

    - optimizations and improvements to existing LED class drivers

    - improvements to the common LEDs DT documentation

    - modifications of kirkwood-* dts files, to be in sync with patches
    for leds-ns2 driver, that move LEDs mode mapping outside of the
    driver"

    * tag 'leds_for_4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
    leds: Export OF module alias information in missing drivers
    leds:lp55xx: use the private data instead of updating I2C device platform data
    leds: syscon: Correct check for syscon_node_to_regmap() errors
    leds: leds-fsg: Use devm_led_classdev_register
    MAINTAINERS: Change LED subsystem git tree URL
    leds/led-class: Add missing put_device()
    ARM: Kirkwood: add modes-map property to ns2-leds nodes
    leds: tlc591xx: Remove redundant I2C_FUNC_SMBUS_BYTE_DATA functionality check
    leds: leds-ns2: depends on MACH_ARMADA_370
    leds: leds-ns2: handle can_sleep GPIOs
    leds: leds-ns2: move LED modes mapping outside of the driver
    leds: lp8860: Constify reg_default tables
    leds: Drop owner assignment from i2c_driver
    leds: Allow compile test of LEDS_AAT1290 and LEDS_KTD2692 if !GPIOLIB
    leds: Allow compile test of GPIO consumers if !GPIOLIB
    DT: leds: Improve description of flash LEDs related properties

    Linus Torvalds
     
  • Pull spi updates from Mark Brown:
    "A few core tweaks this time together with the usual collection of
    driver specific updates and fixes plus a larger than average selection
    of new device support:

    - fix DMA mapping of unaligned vmalloc() buffers

    - statistics tracking transfer volumes exposed via sysfs

    - new drivers for Freescale MPC5125, Intel Sunrise Point, Mediatek
    SoCs, and Netlogic XLP SoCs"

    * tag 'spi-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (66 commits)
    spi: sh-msiof: Fix FIFO size to 64 word from 256 word
    spi: fsl-(e)spi: Fix checking return value of devm_ioremap_resource
    spi: Add DT bindings documentation for Netlogic XLP SPI controller
    spi/xlp: SPI controller driver for Netlogic XLP SoCs
    spi: fsl-espi: add runtime PM
    spi: fsl-(e)spi: simplify cleanup code
    spi: fsl-(e)spi: migrate to using devm_ functions to simplify cleanup
    spi: mediatek: fix SPI_CMD_PAUSE_IE macro error
    spi: check bits_per_word in spi_setup
    spi: mediatek: replace *_time name
    spi: mediatek: add PM clk_prepare_enable fail flow
    spi: mediatek: replace int with u32, delete TAB and define MTK_SPI_PAUSE_INT_STATUS marco
    spi: mediatek: add linux/io.h include file
    spi/bcm63xx-hsspi: add support for dual spi read/write
    spi: dw: Allow interface drivers to limit data I/O to word sizes
    dt: snps,dw-apb-ssi: Document new I/O data register width property
    spi: Fall back to master maximum speed if no slave speed specified
    spi: mediatek: use BIT() to instead of SPI_CMD_*_OFFSET
    spi: medaitek: revise quirks compatibility style
    spi: mediatek: fix spi incorrect endian usage
    ...

    Linus Torvalds
     
  • Pull regulator updates from Mark Brown:
    "The biggest changes in the core this time around have been some
    refactorings that move us towards being able to drop the list of
    regulators maintained by the core and instead just use the driver
    model list maintained for the class devices for regulators which will
    make the code smaller and avoid some potential bugs.

    Otherwise another fairly quiet release for the regulator API,
    highlights include:

    - a new API for setting voltages based on a minimum, target, maximum
    triplet

    - support for continuous voltage ranges rather than tables of
    explicit steps in the PWM regulator, requiring less explicit
    configuration

    - new driver support for Dialog DA9215, Maxim 77843, Mediatek MT6311
    and Qualcomm RPM"

    * tag 'regulator-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (70 commits)
    regulator: mt6311: fix platform_no_drv_owner.cocci warnings
    regulator: ltc3589: Remove unnecessary MODULE_ALIAS()
    regulator: ad5398: Remove unnecessary MODULE_ALIAS()
    regulator: pfuze100: Remove unnecessary MODULE_ALIAS()
    regulator: core: use debug level print in regulator_check_drms
    regulator: lp872x: handle error case
    regulator: lp872x: use the private data instead of updating I2C device platform data
    regulator: isl9305: Export OF module alias information
    regulators: max77693: register driver earlier to avoid deferred probe
    regulator: qcom_smd: Set n_voltages for pm8941_lnldo
    regulator: core: Use IS_ERR_OR_NULL()
    regulator: core: Define regulator_set_voltage_triplet()
    regulator: Regulator driver for the Qualcomm RPM
    regulator: pbias: Fix broken pbias disable functionality
    regulator: core: Spelling fix
    regulator: core: Use class device list for regulator_list in late init
    regulator: core: Move more deallocation into class unregister
    regulator: core: Reduce rdev locking region when releasing regulator
    Input: Remove the max77843 haptic driver
    Input: max77693: Add support for Maxim 77843
    ...

    Linus Torvalds
     
  • Pull documentation updates from Jonathan Corbet:
    "There's been a fair amount going on in the docs tree this time around,
    including:

    - Support for reproducible document builds, from Ben Hutchings and
    company.

    - The ability to automatically generate cross-reference links within
    a single DocBook book and embedded descriptions for large
    structures. From Danilo Cesar Lemes de Paula.

    - A new document on how to add a system call from David Drysdale.

    - Chameleon bus documentation from Johannes Thumshirn.

    ...plus the usual collection of improvements, typo fixes, and more"

    * tag 'docs-for-linus' of git://git.lwn.net/linux-2.6: (39 commits)
    Documentation, add kernel-parameters.txt entry for dis_ucode_ldr
    Documentation/x86: Rename IRQSTACKSIZE to IRQ_STACK_SIZE
    Documentation/Intel-IOMMU.txt: Modify definition of DRHD
    docs: update HOWTO for 3.x -> 4.x versioning
    kernel-doc: ignore unneeded attribute information
    scripts/kernel-doc: Adding cross-reference links to html documentation.
    DocBook: Fix non-determinstic installation of duplicate man pages
    Documentation: minor typo fix in mailbox.txt
    Documentation: describe how to add a system call
    doc: Add more workqueue functions to the documentation
    ARM: keystone: add documentation for SoCs and EVMs
    scripts/kernel-doc Allow struct arguments documentation in struct body
    SubmittingPatches: remove stray quote character
    Revert "DocBook: Avoid building man pages repeatedly and inconsistently"
    Documentation: Minor changes to men-chameleon-bus.txt
    Doc: fix trivial typo in SubmittingPatches
    MAINTAINERS: Direct Documentation/DocBook/media properly
    Documentation: installed man pages don't need to be executable
    fix Evolution submenu name in email-clients.txt
    Documentation: Add MCB documentation
    ...

    Linus Torvalds
     
  • …t/groeck/linux-staging

    Pull hwmon updates from Guenter Roeck:
    "Notable changes:

    - added support for LTM4675, LTC3886, LTC2980, LTM2987, LTC2975,
    LTC3887, LTC3882, MAX20751, ADM1293, and ADM1294 to PMBus drivers
    - added support for IT8732F to it87 driver
    - added support for AMD Carrizo to fam15h_power driver
    - added support for various new attributes to nct7802 driver
    - added support for F81866 and F71868 to f71882fg driver"

    * tag 'hwmon-for-linus-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (45 commits)
    hwmon: (fam15h_power) Add ratio of Tsample to the PTSC period
    hwmon: (fam15h_power) Add documentation for new processors support
    hwmon: (fam15h_power) Update running_avg_capture bit field to 28
    hwmon: (fam15h_power) Rename fam15h_power_is_internal_node0 function
    hwmon: (fam15h_power) Add support for AMD Carrizo
    hwmon: (ltc2978) Add support for LTM4675
    hwmon: (ltc2978) Add polling for chips requiring it
    hwmon: (pmbus) Enable PEC if the controller supports it
    hwmon: (pmbus) Use BIT macro
    hwmon: (ltc2978) Add support for LTC3886
    hwmon: (ltc2978) Add support for LTC2980 and LTM2987
    hwmon: (ltc2978) Add missing chip IDs for LTC2978 and LTC3882
    hwmon: (ltc2978) Use correct ID mask to detect all chips
    hwmon: (ltc2978) Introduce helper functions for min and max values
    hwmon: (ltc2978) Introduce feature flags
    hwmon: (pmbus) Convert command register definitions to enum
    hwmon: (ltc2978) Add support for LTC2975
    hwmon: (ltc2978) Add support for LTC3887
    hwmon: (ltc2978) Add additional chip IDs for LTM4676 and LTM4676A
    hwmon: (ltc2978) Add support for LTC3882
    ...

    Linus Torvalds
     
  • Pull power supply and reset changes from Sebastian Reichel:
    - new reset driver for ZTE SoCs
    - add support for sama5d3 reset handling
    - overhaul of twl4030 charger driver
    - misc fixes and cleanups

    * tag 'for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (35 commits)
    bq2415x_charger: Allow to load and use driver even if notify device is not registered yet
    twl4030_charger: fix compile error when TWL4030_MADC not available.
    power: bq24190_charger: Fix charge type sysfs property
    power: Allow compile test of GPIO consumers if !GPIOLIB
    power: Export I2C module alias information in missing drivers
    twl4030_charger: Increase current carefully while watching voltage.
    twl4030_charger: add ac/mode to match usb/mode
    twl4030_charger: add software controlled linear charging mode.
    twl4030_charger: enable manual enable/disable of usb charging.
    twl4030_charger: allow max_current to be managed via sysfs.
    twl4030_charger: distinguish between USB current and 'AC' current
    twl4030_charger: allow fine control of charger current.
    twl4030_charger: split uA calculation into a function.
    twl4030_charger: trust phy to determine when USB power is available.
    twl4030_charger: correctly handle -EPROBE_DEFER from devm_usb_get_phy_by_node
    twl4030_charger: convert to module_platform_driver instead of ..._probe.
    twl4030_charger: use runtime_pm to keep usb phy active while charging.
    rx51-battery: Set name to rx51-battery
    MAINTAINERS: AVS is not maintained via power supply tree
    power: olpc_battery: clean up eeprom read function
    ...

    Linus Torvalds
     
  • Pull s390 updates from Martin Schwidefsky:
    "The big one is support for fake NUMA, splitting a really large machine
    in more manageable piece improves performance in some cases, e.g. for
    a KVM host.

    The FICON Link Incident handling has been improved, this helps the
    operator to identify degraded or non-operational FICON connections.

    The save and restore of floating point and vector registers has been
    overhauled to allow the future use of vector registers in the kernel.

    A few small enhancement, magic sys-requests for the vt220 console via
    SCLP, some more assembler code has been converted to C, the PCI error
    handling is improved.

    And the usual cleanup and bug fixing"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (59 commits)
    s390/jump_label: Use %*ph to print small buffers
    s390/sclp_vt220: support magic sysrequests
    s390/ctrlchar: improve handling of magic sysrequests
    s390/numa: remove superfluous ARCH_WANT defines
    s390/3270: redraw screen on unsolicited device end
    s390/dcssblk: correct out of bounds array indexes
    s390/mm: simplify page table alloc/free code
    s390/pci: move debug messages to debugfs
    s390/nmi: initialize control register 0 earlier
    s390/zcrypt: use msleep() instead of mdelay()
    s390/hmcdrv: fix interrupt registration
    s390/setup: fix novx parameter
    s390/uaccess: remove uaccess_primary kernel parameter
    s390: remove unneeded sizeof(void *) comparisons
    s390/facilities: remove transactional-execution bits
    s390/numa: re-add DIE sched_domain_topology_level
    s390/dasd: enhance CUIR scope detection
    s390/dasd: fix failing path verification
    s390/vdso: emit a GNU hash
    s390/numa: make core to node mapping data dynamic
    ...

    Linus Torvalds
     
  • Pull xtensa updates from Chris Zankel:
    "Xtensa fixes and improvements for 4.3:

    - reimplement DMA API using common helpers
    - implement counting and sampling perf events using hardware perf
    counters
    - add fake NMI support for hardware perf counters
    - fix THREADPTR register reloading on return to userspace
    - keep exception/interrupt stack continuous for debugger
    - improve vmlinux.lds.S post-processing"

    * tag 'xtensa-20150830' of git://github.com/czankel/xtensa-linux:
    xtensa: improve vmlinux.lds.S sed post-processing
    xtensa: drop unused irq_err_count
    xtensa: implement fake NMI
    xtensa: don't touch EXC_TABLE_FIXUP in _switch_to
    xtensa: fix kernel register spilling
    xtensa: reorganize irq flags tracing
    perf tools: xtensa: add DWARF register names
    xtensa: implement counting and sampling perf events
    xtensa: count software page fault perf events
    xtensa: add profiling IRQ type to xtensa_irq_map
    xtensa: select PERF_USE_VMALLOC for cache-aliasing configurations
    xtensa: move oprofile stack tracing to stacktrace.c
    xtensa: keep exception/interrupt stack continuous
    xtensa: clean up Kconfig dependencies for custom cores
    xtensa: reimplement DMA API using common helpers
    xtensa: fix threadptr reload on return to userspace
    xtensa: ISS: add missing va_end into split_if_spec

    Linus Torvalds
     
  • Pull alpha update from Matt Turner:
    "A single patch for alpha, one that enables ARCH_USE_CMPXCHG_LOCKREF
    and offers around an 8% performance improvement on a little benchmark
    that you wrote"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
    alpha: select CONFIG_ARCH_USE_CMPXCHG_LOCKREF.

    Linus Torvalds
     
  • Pull m68k updates from Geert Uytterhoeven.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
    m68k/bootinfo: Use kmemdup rather than duplicating its implementation
    m68k/defconfig: Update defconfigs for v4.2-rc1
    m68k/defconfig: Disable experimental CONFIG_DM_CACHE

    Linus Torvalds
     
  • Pull USB updates from Greg KH:
    "Here's the big USB and PHY patchset for 4.3-rc1.

    As usual, the majority of the changes are in the USB gadget portion of
    the tree, lots of little changes all over the place for bugs and new
    hardware. Other than that, the normal mix of new hardware support and
    bugfixes.

    All have been in linux-next with no reported issues"

    * tag 'usb-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (261 commits)
    USB: qcserial: add HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module
    USB: ftdi_sio: Added custom PID for CustomWare products
    USB: usb_wwan: silence read errors on disconnect
    USB: option: silence interrupt errors
    USB: symbolserial: Correct transferred data size
    USB: symbolserial: Use usb_get_serial_port_data
    usb: misc: usbtest: format max packet size for iso transfer
    usb: host: ehci-sys: delete useless bus_to_hcd conversion
    Revert "usb: interface authorization: Declare authorized attribute"
    Revert "usb: interface authorization: Introduces the default interface authorization"
    Revert "usb: interface authorization: Control interface probing and claiming"
    Revert "usb: interface authorization: Introduces the USB interface authorization"
    Revert "usb: interface authorization: SysFS part of USB interface authorization"
    Revert "usb: interface authorization: Documentation part"
    Revert "usb: interface authorization: Use a flag for the default device authorization"
    usb: core: hub: Removed some warnings generated by checkpatch.pl
    USB: host: ohci-at91: merge loops in ohci_hcd_at91_drv_probe
    USB: host: ohci-at91: merge ohci_at91_of_init in ohci_hcd_at91_drv_probe
    USB: host: ohci-at91: depend on OF
    USB: host: ohci-at91: move at91_usbh_data definition in c file
    ...

    Linus Torvalds
     
  • Pull tty/serial driver updates from Greg KH:
    "Here is the big tty/serial driver update for 4.3-rc1.

    Not many major things, a number of driver updates and changes, and the
    8250 driver got split up a bit to make it easier to work with by
    moving some functions to a new file. Full details are in the
    shortlog.

    All have been in linux-next with no reported issues"

    * tag 'tty-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (90 commits)
    serial: imx: save and restore context in the suspend path
    serial: imx: allow waking up on RTSD
    serial: imx: introduce serial_imx_enable_wakeup()
    serial: imx: remove unbalanced clk_prepare
    serial: 8250: move rx_running out of the bitfield
    tty: serial: 8250_omap: do not use RX DMA if pause is not supported
    serial:8250_dw: do not alter CTS and DCTS since AFE is enabled
    tty: serial: men_z135_uart.c: Don't initialize port->lock
    tty: serial: men_z135_uart.c: Fix race between IRQ and set_termios()
    serial: 8250: bind to ALi Fast Infrared Controller (ALI5123)
    serial: 8250: don't bind to SMSC IrCC IR port
    serial: mxs-auart: fix baud rate range
    serial: mxs-auart: keep the AUART unit in reset state when not in use
    serial: mxs-auart: use a function name to reflect what it really does
    serial: 8250_pci: fix mode after S3/S4 resume for F81504/508/512
    sc16is7xx: constify devtype
    sc16is7xx: support multiple devices
    sc16is7xx: save and use per-chip line number
    uart: pl011: Add support to ZTE ZX296702 uart
    uart: pl011: Improve LCRH register access decision
    ...

    Linus Torvalds
     
  • Pull staging driver updates from Greg KH:
    "Here is the big staging driver updates for 4.3-rc1.

    Lots of things all over the place, almost all of them trivial fixups
    and changes. The usual IIO updates and new drivers and we have added
    the MOST driver subsystem which is getting cleaned up in the tree.
    The ozwpan driver is finally being deleted as it is obviously
    abandoned and no one cares about it.

    Full details are in the shortlog, and all of these have been in
    linux-next with no reported issues"

    * tag 'staging-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (912 commits)
    staging/lustre/o2iblnd: remove references to ib_reg_phsy_mr()
    staging: wilc1000: fix build warning with setup_timer()
    staging: wilc1000: remove DECLARE_WILC_BUFFER()
    staging: wilc1000: remove void function return statements that are not useful
    staging: wilc1000: coreconfigurator.c: fix kmalloc error check
    staging: wilc1000: coreconfigurator.c: use kmalloc instead of WILC_MALLOC
    staging: wilc1000: remove unused codes of gps8ConfigPacket
    staging: wilc1000: remove unnecessary void pointer cast
    staging: wilc1000: remove WILC_NEW and WILC_NEW_EX
    staging: wilc1000: use kmalloc instead of WILC_NEW
    staging: wilc1000: Process WARN, INFO options of debug levels from user
    staging: wilc1000: remove unneeded tstrWILC_MsgQueueAttrs typedef
    staging: wilc1000: delete wilc_osconfig.h
    staging: wilc1000: delete wilc_log.h
    staging: wilc1000: delete wilc_timer.h
    staging: wilc1000: remove WILC_TimerStart()
    staging: wilc1000: remove WILC_TimerCreate()
    staging: wilc1000: remove WILC_TimerDestroy()
    staging: wilc1000: remove WILC_TimerStop()
    staging: wilc1000: remove tstrWILC_TimerAttrs typedef
    ...

    Linus Torvalds
     

31 Aug, 2015

14 commits

  • Pull driver core updates from Greg KH:
    "Here is the new patches for the driver core / sysfs for 4.3-rc1.

    Very small number of changes here, all the details are in the
    shortlog, nothing major happening at all this kernel release, which is
    nice to see"

    * tag 'driver-core-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
    bus: subsys: update return type of ->remove_dev() to void
    driver core: correct device's shutdown order
    driver core: fix docbook for device_private.device
    selftests: firmware: skip timeout checks for kernels without user mode helper
    kernel, cpu: Remove bogus __ref annotations
    cpu: Remove bogus __ref annotation of cpu_subsys_online()
    firmware: fix wrong memory deallocation in fw_add_devm_name()
    sysfs.txt: update show method notes about sprintf/snprintf/scnprintf usage
    devres: fix devres_get()

    Linus Torvalds
     
  • Pull char/misc driver patches from Greg KH:
    "Here's the "big" char/misc driver update for 4.3-rc1.

    Not much really interesting here, just a number of little changes all
    over the place, and some nice consolidation of the nvmem drivers to a
    common framework. As usual, the mei drivers stand out as the largest
    "churn" to handle new devices and features in their hardware.

    All have been in linux-next for a while with no issues"

    * tag 'char-misc-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (136 commits)
    auxdisplay: ks0108: initialize local parport variable
    extcon: palmas: Fix build break due to devm_gpiod_get_optional API change
    extcon: palmas: Support GPIO based USB ID detection
    extcon: Fix signedness bugs about break error handling
    extcon: Drop owner assignment from i2c_driver
    extcon: arizona: Simplify pdata symantics for micd_dbtime
    extcon: arizona: Declare 3-pole jack if we detect open circuit on mic
    extcon: Add exception handling to prevent the NULL pointer access
    extcon: arizona: Ensure variables are set for headphone detection
    extcon: arizona: Use gpiod inteface to handle micd_pol_gpio gpio
    extcon: arizona: Add basic microphone detection DT/ACPI bindings
    extcon: arizona: Update to use the new device properties API
    extcon: palmas: Remove the mutually_exclusive array
    extcon: Remove optional print_state() function pointer of struct extcon_dev
    extcon: Remove duplicate header file in extcon.h
    extcon: max77843: Clear IRQ bits state before request IRQ
    toshiba laptop: replace ioremap_cache with ioremap
    misc: eeprom: max6875: clean up max6875_read()
    misc: eeprom: clean up eeprom_read()
    misc: eeprom: 93xx46: clean up eeprom_93xx46_bin_read/write
    ...

    Linus Torvalds
     
  • Pull kvm updates from Paolo Bonzini:
    "A very small release for x86 and s390 KVM.

    - s390: timekeeping changes, cleanups and fixes

    - x86: support for Hyper-V MSRs to report crashes, and a bunch of
    cleanups.

    One interesting feature that was planned for 4.3 (emulating the local
    APIC in kernel while keeping the IOAPIC and 8254 in userspace) had to
    be delayed because Intel complained about my reading of the manual"

    * tag 'kvm-4.3-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (42 commits)
    x86/kvm: Rename VMX's segment access rights defines
    KVM: x86/vPMU: Fix unnecessary signed extension for AMD PERFCTRn
    kvm: x86: Fix error handling in the function kvm_lapic_sync_from_vapic
    KVM: s390: Fix assumption that kvm_set_irq_routing is always run successfully
    KVM: VMX: drop ept misconfig check
    KVM: MMU: fully check zero bits for sptes
    KVM: MMU: introduce is_shadow_zero_bits_set()
    KVM: MMU: introduce the framework to check zero bits on sptes
    KVM: MMU: split reset_rsvds_bits_mask_ept
    KVM: MMU: split reset_rsvds_bits_mask
    KVM: MMU: introduce rsvd_bits_validate
    KVM: MMU: move FNAME(is_rsvd_bits_set) to mmu.c
    KVM: MMU: fix validation of mmio page fault
    KVM: MTRR: Use default type for non-MTRR-covered gfn before WARN_ON
    KVM: s390: host STP toleration for VMs
    KVM: x86: clean/fix memory barriers in irqchip_in_kernel
    KVM: document memory barriers for kvm->vcpus/kvm->online_vcpus
    KVM: x86: remove unnecessary memory barriers for shared MSRs
    KVM: move code related to KVM_SET_BOOT_CPU_ID to x86
    KVM: s390: log capability enablement and vm attribute changes
    ...

    Linus Torvalds
     
  • …opic/xlp' into spi-next

    Mark Brown
     
  • …h-msiof', 'spi/topic/spidev' and 'spi/topic/stats' into spi-next

    Mark Brown
     
  • …spi', 'spi/topic/rockchip' and 'spi/topic/s3c24xx' into spi-next

    Mark Brown
     
  • …img-spfi' and 'spi/topic/mpc512x-psc' into spi-next

    Mark Brown
     
  • …c/bcm63xx-hsspi' and 'spi/topic/davinci' into spi-next

    Mark Brown
     
  • Mark Brown
     
  • Mark Brown
     
  • …g-spfi', 'spi/fix/omap2-mcspi', 'spi/fix/orion' and 'spi/fix/xilinx' into spi-linus

    Mark Brown
     
  • The upper limit of Tx/Rx FIFO size is 64 word by the
    specification of H/W. This patch corrects to 64 word from 256 word.

    Signed-off-by: Koji Matsuoka
    Signed-off-by: Yoshihiro Kaneko
    Signed-off-by: Mark Brown
    Cc: stable@vger.kernel.org

    Koji Matsuoka
     
  • …/acme/linux into perf/core

    Pull perf/core improvement and fixes from Arnaldo Carvalho de Melo:

    User visible changes:

    - Add new compaction-times python script. (Tony Jones)

    - Make the --[no-]-demangle/--[no-]-demangle-kernel command line
    options available in 'perf script' too. (Mark Drayton)

    - Allow for negative numbers in libtraceevent's print format,
    fixing up misformatting in some tracepoints. (Steven Rostedt)

    Infrastructure changes:

    - perf_env/perf_evlist changes to allow accessing the data
    structure with the environment where some perf data was
    collected in functions not necessarily related to perf.data
    file processing. (Kan Liang)

    - Cleanups for the tracepoint definition location paths routines. (Jiri Olsa)

    - Introduce sysfs/filename__sprintf_build_id, removing code
    duplication. (Masami Hiramatsu)

    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@kernel.org>

    Ingo Molnar
     
  • Signed-off-by: Ingo Molnar

    Ingo Molnar