1. 03 Jul, 2013 14 commits
    • Linus Torvalds's avatar
      Merge branch 'exotic-arch-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · ab534857
      Linus Torvalds authored
      Pull "exotic" arch fixes from Geert Uytterhoeven:
       "This is a collection of several exotic architecture fixes, and a few
        other fixes for issues that were detected while doing the former"
      
      * 'exotic-arch-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (35 commits)
        lib: Move fonts from drivers/video/console/ to lib/fonts/
        console/font: Refactor font support code selection logic
        Revert "staging/solo6x10: depend on CONFIG_FONTS"
        input: cros_ec_keyb_clear_keyboard() depends on CONFIG_PM_SLEEP
        score: Wire up asm-generic/xor.h
        score: Remove unneeded <asm/dma-mapping.h>
        openrisc: Wire up asm-generic/xor.h
        h8300/boot: Use POSIX "$((..))" instead of bashism "$[...]"
        h8300: Mark H83002 and H83048 CPU support broken
        h8300: Switch h8300 to drivers/Kconfig
        h8300: Limit timer channel ranges in Kconfig
        h8300: Wire up asm-generic/xor.h
        h8300: Fill the system call table using a CALL() macro
        h8300: Fix <asm/tlb.h>
        h8300: Hardcode symbol prefixes in asm sources
        h8300: add missing definition for read_barries_depends()
        frv: head.S - Remove commented-out initialization code
        cris: Wire up asm-generic/vga.h
        parport: disable PC-style parallel port support on cris
        console: Disable VGA text console support on cris
        ...
      ab534857
    • Linus Torvalds's avatar
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 0e97456a
      Linus Torvalds authored
      Pull m68k updates from Geert Uytterhoeven.
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k/q40: Enable PC parallel port in defconfig
        m68k/q40: Undefine insl/outsl before redefining them
        m68k/uaccess: Fix asm constraints for userspace access
        swim: Release memory region after incorrect return/goto
        m68k/irq: Vector ints need a valid interrupt handler
        m68k/math-emu: unsigned issue, 'unsigned long' will never be less than zero
        m68k: remove CONFIG_EARLY_PRINTK dependency on CONFIG_EMBEDDED, default to n
        m68k/sun3: remove inline marking of EXPORT_SYMBOL functions
        [SCSI] a3000: use module_platform_driver_probe()
        [SCSI] a4000t: use module_platform_driver_probe()
        m68k: Remove inline strcpy() and strcat() implementations
      0e97456a
    • Linus Torvalds's avatar
      Merge tag 'arc-v3.11-rc1-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 76d3f4c2
      Linus Torvalds authored
      Pull first batch of ARC changes from Vineet Gupta:
       "There's a second bunch to follow next week - which depends on commits
        on other trees (irq/net).  I'd have preferred the accompanying ARC
        change via respective trees, but it didn't workout somehow.
      
        Highlights of changes:
      
         - Continuation of ARC MM changes from 3.10 including
      
             zero page optimization
             Setting pagecache pages dirty by default
             Non executable stack by default
             Reducing dcache flushes for aliasing VIPT config
      
         - Long overdue rework of pt_regs machinery - removing the unused word
           gutters and adding ECR register to baseline (helps cleanup lot of
           low level code)
      
         - Support for ARC gcc 4.8
      
         - Few other preventive fixes, cosmetics, usage of Kconfig helper..
      
        The diffstat is larger than normal primarily because of arcregs.h
        header split as well as beautification of macros in entry.h"
      
      * tag 'arc-v3.11-rc1-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (32 commits)
        ARC: warn on improper stack unwind FDE entries
        arc: delete __cpuinit usage from all arc files
        ARC: [tlb-miss] Fix bug with CONFIG_ARC_DBG_TLB_MISS_COUNT
        ARC: [tlb-miss] Extraneous PTE bit testing/setting
        ARC: Adjustments for gcc 4.8
        ARC: Setup Vector Table Base in early boot
        ARC: Remove explicit passing around of ECR
        ARC: pt_regs update #5: Use real ECR for pt_regs->event vs. synth values
        ARC: stop using pt_regs->orig_r8
        ARC: pt_regs update #4: r25 saved/restored unconditionally
        ARC: K/U SP saved from one location in stack switching macro
        ARC: Entry Handler tweaks: Simplify branch for in-kernel preemption
        ARC: Entry Handler tweaks: Avoid hardcoded LIMMS for ECR values
        ARC: Increase readability of entry handlers
        ARC: pt_regs update #3: Remove unused gutter at start of callee_regs
        ARC: pt_regs update #2: Remove unused gutter at start of pt_regs
        ARC: pt_regs update #1: Align pt_regs end with end of kernel stack page
        ARC: pt_regs update #0: remove kernel stack canary
        ARC: [mm] Remove @write argument to do_page_fault()
        ARC: [mm] Make stack/heap Non-executable by default
        ...
      76d3f4c2
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · c1101cbc
      Linus Torvalds authored
      Pull s390 updates from Martin Schwidefsky:
       "This is the bulk of the s390 patches for the 3.11 merge window.
      
        Notable enhancements are: the block timeout patches for dasd from
        Hannes, and more work on the PCI support front.  In addition some
        cleanup and the usual bug fixing."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (42 commits)
        s390/dasd: Fail all requests when DASD_FLAG_ABORTIO is set
        s390/dasd: Add 'timeout' attribute
        block: check for timeout function in blk_rq_timed_out()
        block/dasd: detailed I/O errors
        s390/dasd: Reduce amount of messages for specific errors
        s390/dasd: Implement block timeout handling
        s390/dasd: process all requests in the device tasklet
        s390/dasd: make number of retries configurable
        s390/dasd: Clarify comment
        s390/hwsampler: Updated misleading member names in hws_data_entry
        s390/appldata_net_sum: do not use static data
        s390/appldata_mem: do not use static data
        s390/vmwatchdog: do not use static data
        s390/airq: simplify adapter interrupt code
        s390/pci: remove per device debug attribute
        s390/dma: remove gratuitous brackets
        s390/facility: decompose test_facility()
        s390/sclp: remove duplicated include from sclp_ctl.c
        s390/irq: store interrupt information in pt_regs
        s390/drivers: Cocci spatch "ptr_ret.spatch"
        ...
      c1101cbc
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64 · 1873e500
      Linus Torvalds authored
      Pull ARM64 updates from Catalin Marinas:
       "Main features:
         - KVM and Xen ports to AArch64
         - Hugetlbfs and transparent huge pages support for arm64
         - Applied Micro X-Gene Kconfig entry and dts file
         - Cache flushing improvements
      
        For arm64 huge pages support, there are x86 changes moving part of
        arch/x86/mm/hugetlbpage.c into mm/hugetlb.c to be re-used by arm64"
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64: (66 commits)
        arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
        arm64: Add defines for APM ARMv8 implementation
        arm64: Enable APM X-Gene SOC family in the defconfig
        arm64: Add Kconfig option for APM X-Gene SOC family
        arm64/Makefile: provide vdso_install target
        ARM64: mm: THP support.
        ARM64: mm: Raise MAX_ORDER for 64KB pages and THP.
        ARM64: mm: HugeTLB support.
        ARM64: mm: Move PTE_PROT_NONE bit.
        ARM64: mm: Make PAGE_NONE pages read only and no-execute.
        ARM64: mm: Restore memblock limit when map_mem finished.
        mm: thp: Correct the HPAGE_PMD_ORDER check.
        x86: mm: Remove general hugetlb code from x86.
        mm: hugetlb: Copy general hugetlb code from x86 to mm.
        x86: mm: Remove x86 version of huge_pmd_share.
        mm: hugetlb: Copy huge_pmd_share from x86 to mm.
        arm64: KVM: document kernel object mappings in HYP
        arm64: KVM: MAINTAINERS update
        arm64: KVM: userspace API documentation
        arm64: KVM: enable initialization of a 32bit vcpu
        ...
      1873e500
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm · fb2af002
      Linus Torvalds authored
      Pull ARM updates from Russell King:
       "This contains the usual updates from other people (listed below) and
        the usual random muddle of miscellaneous ARM updates which cover some
        low priority bug fixes and performance improvements.
      
        I've started to put the pull request wording into the merge commits,
        which are:
      
         - NoMMU stuff:
      
           This includes the following series sent earlier to the list:
            - nommu-fixes
            - R7 Support
            - MPU support
      
           I've left out the ARCH_MULTIPLATFORM/!MMU stuff that Arnd and I
           were discussing today until we've reached a conclusion/that's had
           some more review.
      
           This is rebased (and re-tested) on your devel-stable branch because
           otherwise there were going to be conflicts with Uwe's V7M work now
           that you've merged that.  I've included the fix for limiting MPU to
           CPU_V7.
      
         - Huge page support
      
           These changes bring both HugeTLB support and Transparent HugePage
           (THP) support to ARM.  Only long descriptors (LPAE) are supported
           in this series.
      
           The code has been tested on an Arndale board (Exynos 5250).
      
         - LPAE updates
      
           Please pull these miscellaneous LPAE fixes I've been collecting for
           a while now for 3.11.  They've been tested and reviewed by quite a
           few people, and most of the patches are pretty trivial.  -- Will Deacon.
      
         - arch_timer cleanups
      
           Please pull these arch_timer cleanups I've been holding onto for a
           while.  They're the same as my last posting, but have been rebased
           to v3.10-rc3.
      
         - mpidr linearisation (multiprocessor id register - identifies which
           CPU number we are in the system)
      
           This patch series that implements MPIDR linearization through a
           simple hashing algorithm and updates current cpu_{suspend}/{resume}
           code to use the newly created hash structures to retrieve context
           pointers.  It represents a stepping stone for the implementation of
           power management code on forthcoming multi-cluster ARM systems.
      
           It has been tested on TC2 (dual cluster A15xA7 system), iMX6q,
           OMAP4 and Tegra, with processors hitting low-power states requiring
           warm-boot resume through the cpu_resume code path"
      
      * 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (77 commits)
        ARM: 7775/1: mm: Remove do_sect_fault from LPAE code
        ARM: 7777/1: Avoid extra calls to the C compiler
        ARM: 7774/1: Fix dtb dependency to use order-only prerequisites
        ARM: 7770/1: remove residual ARMv2 support from decompressor
        ARM: 7769/1: Cortex-A15: fix erratum 798181 implementation
        ARM: 7768/1: prevent risks of out-of-bound access in ASID allocator
        ARM: 7767/1: let the ASID allocator handle suspended animation
        ARM: 7766/1: versatile: don't mark pen as __INIT
        ARM: 7765/1: perf: Record the user-mode PC in the call chain.
        ARM: 7735/2: Preserve the user r/w register TPIDRURW on context switch and fork
        ARM: kernel: implement stack pointer save array through MPIDR hashing
        ARM: kernel: build MPIDR hash function data structure
        ARM: mpu: Ensure that MPU depends on CPU_V7
        ARM: mpu: protect the vectors page with an MPU region
        ARM: mpu: Allow enabling of the MPU via kconfig
        ARM: 7758/1: introduce config HAS_BANDGAP
        ARM: 7757/1: mm: don't flush icache in switch_mm with hardware broadcasting
        ARM: 7751/1: zImage: don't overwrite ourself with a page table
        ARM: 7749/1: spinlock: retry trylock operation if strex fails on free lock
        ARM: 7748/1: oabi: handle faults when loading swi instruction from userspace
        ...
      fb2af002
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 790eac56
      Linus Torvalds authored
      Pull second set of VFS changes from Al Viro:
       "Assorted f_pos race fixes, making do_splice_direct() safe to call with
        i_mutex on parent, O_TMPFILE support, Jeff's locks.c series,
        ->d_hash/->d_compare calling conventions changes from Linus, misc
        stuff all over the place."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (63 commits)
        Document ->tmpfile()
        ext4: ->tmpfile() support
        vfs: export lseek_execute() to modules
        lseek_execute() doesn't need an inode passed to it
        block_dev: switch to fixed_size_llseek()
        cpqphp_sysfs: switch to fixed_size_llseek()
        tile-srom: switch to fixed_size_llseek()
        proc_powerpc: switch to fixed_size_llseek()
        ubi/cdev: switch to fixed_size_llseek()
        pci/proc: switch to fixed_size_llseek()
        isapnp: switch to fixed_size_llseek()
        lpfc: switch to fixed_size_llseek()
        locks: give the blocked_hash its own spinlock
        locks: add a new "lm_owner_key" lock operation
        locks: turn the blocked_list into a hashtable
        locks: convert fl_link to a hlist_node
        locks: avoid taking global lock if possible when waking up blocked waiters
        locks: protect most of the file_lock handling with i_lock
        locks: encapsulate the fl_link list handling
        locks: make "added" in __posix_lock_file a bool
        ...
      790eac56
    • Al Viro's avatar
      Document ->tmpfile() · 48bde8d3
      Al Viro authored
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      48bde8d3
    • Al Viro's avatar
      ext4: ->tmpfile() support · af51a2ac
      Al Viro authored
      very similar to ext3 counterpart...
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      af51a2ac
    • Jie Liu's avatar
      vfs: export lseek_execute() to modules · 46a1c2c7
      Jie Liu authored
      For those file systems(btrfs/ext4/ocfs2/tmpfs) that support
      SEEK_DATA/SEEK_HOLE functions, we end up handling the similar
      matter in lseek_execute() to update the current file offset
      to the desired offset if it is valid, ceph also does the
      simliar things at ceph_llseek().
      
      To reduce the duplications, this patch make lseek_execute()
      public accessible so that we can call it directly from the
      underlying file systems.
      
      Thanks Dave Chinner for this suggestion.
      
      [AV: call it vfs_setpos(), don't bring the removed 'inode' argument back]
      
      v2->v1:
      - Add kernel-doc comments for lseek_execute()
      - Call lseek_execute() in ceph->llseek()
      Signed-off-by: default avatarJie Liu <jeff.liu@oracle.com>
      Cc: Dave Chinner <dchinner@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Andi Kleen <andi@firstfloor.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Chris Mason <chris.mason@fusionio.com>
      Cc: Josef Bacik <jbacik@fusionio.com>
      Cc: Ben Myers <bpm@sgi.com>
      Cc: Ted Tso <tytso@mit.edu>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Mark Fasheh <mfasheh@suse.com>
      Cc: Joel Becker <jlbec@evilplan.org>
      Cc: Sage Weil <sage@inktank.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      46a1c2c7
    • Linus Torvalds's avatar
      Merge branch 'for-3.11-cpuset' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 0b0585c3
      Linus Torvalds authored
      Pull cpuset changes from Tejun Heo:
       "cpuset has always been rather odd about its configurations - a cgroup
        right after creation didn't allow any task executions before
        configuration, changing configuration in the parent modifies the
        descendants irreversibly and so on.  These behaviors are inherently
        nasty and almost hostile against sharing the hierarchy with other
        controllers making it very difficult to use in unified hierarchy.
      
        Li is currently in the process of updating the behaviors for
        __DEVEL__sane_behavior which is the bulk of changes in this pull
        request.  It isn't complete yet and the behaviors will change further
        but all changes are gated behind sane_behavior.  In the process, the
        rather hairy work-item punting which was used to work around the
        limitations of cgroup descendant iterator was simplified."
      
      * 'for-3.11-cpuset' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cpuset: rename @cont to @cgrp
        cpuset: fix to migrate mm correctly in a corner case
        cpuset: allow to move tasks to empty cpusets
        cpuset: allow to keep tasks in empty cpusets
        cpuset: introduce effective_{cpumask|nodemask}_cpuset()
        cpuset: record old_mems_allowed in struct cpuset
        cpuset: remove async hotplug propagation work
        cpuset: let hotplug propagation work wait for task attaching
        cpuset: re-structure update_cpumask() a bit
        cpuset: remove cpuset_test_cpumask()
        cpuset: remove unnecessary variable in cpuset_attach()
        cpuset: cleanup guarantee_online_{cpus|mems}()
        cpuset: remove redundant check in cpuset_cpus_allowed_fallback()
      0b0585c3
    • Linus Torvalds's avatar
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · b028161f
      Linus Torvalds authored
      Pull cgroup changes from Tejun Heo:
       "This pull request contains the following changes.
      
         - cgroup_subsys_state (css) reference counting has been converted to
           percpu-ref.  css is what each resource controller embeds into its
           own control structure and perform reference count against.  It may
           be used in hot paths of various subsystems and is similar to module
           refcnt in that aspect.  For example, block-cgroup's css refcnting
           was showing up a lot in Mikulaus's device-mapper scalability work
           and this should alleviate it.
      
         - cgroup subtree iterator has been updated so that RCU read lock can
           be released after grabbing reference.  This allows simplifying its
           users which requires blocking which used to build iteration list
           under RCU read lock and then traverse it outside.  This pull
           request contains simplification of cgroup core and device-cgroup.
           A separate pull request will update cpuset.
      
         - Fixes for various bugs including corner race conditions and RCU
           usage bugs.
      
         - A lot of cleanups and some prepartory work for the planned unified
           hierarchy support."
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (48 commits)
        cgroup: CGRP_ROOT_SUBSYS_BOUND should also be ignored when mounting an existing hierarchy
        cgroup: CGRP_ROOT_SUBSYS_BOUND should be ignored when comparing mount options
        cgroup: fix deadlock on cgroup_mutex via drop_parsed_module_refcounts()
        cgroup: always use RCU accessors for protected accesses
        cgroup: fix RCU accesses around task->cgroups
        cgroup: fix RCU accesses to task->cgroups
        cgroup: grab cgroup_mutex in drop_parsed_module_refcounts()
        cgroup: fix cgroupfs_root early destruction path
        cgroup: reserve ID 0 for dummy_root and 1 for unified hierarchy
        cgroup: implement for_each_[builtin_]subsys()
        cgroup: move init_css_set initialization inside cgroup_mutex
        cgroup: s/for_each_subsys()/for_each_root_subsys()/
        cgroup: clean up find_css_set() and friends
        cgroup: remove cgroup->actual_subsys_mask
        cgroup: prefix global variables with "cgroup_"
        cgroup: convert CFTYPE_* flags to enums
        cgroup: rename cont to cgrp
        cgroup: clean up cgroup_serial_nr_cursor
        cgroup: convert cgroup_cft_commit() to use cgroup_for_each_descendant_pre()
        cgroup: make serial_nr_cursor available throughout cgroup.c
        ...
      b028161f
    • Linus Torvalds's avatar
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · f317ff9e
      Linus Torvalds authored
      Pull workqueue changes from Tejun Heo:
       "Surprisingly, Lai and I didn't break too many things implementing
        custom pools and stuff last time around and there aren't any follow-up
        changes necessary at this point.
      
        The only change in this pull request is Viresh's patches to make some
        per-cpu workqueues to behave as unbound workqueues dependent on a boot
        param whose default can be configured via a config option.  This leads
        to higher processing overhead / lower bandwidth as more work items are
        bounced across CPUs; however, it can lead to noticeable powersave in
        certain configurations - ~10% w/ idlish constant workload on a
        big.LITTLE configuration according to Viresh.
      
        This is because per-cpu workqueues interfere with how the scheduler
        perceives whether or not each CPU is idle by forcing pinned tasks on
        them, which makes the scheduler's power-aware scheduling decisions
        less effective.
      
        Its effectiveness is likely less pronounced on homogenous
        configurations and this type of optimization can probably be made
        automatic; however, the changes are pretty minimal and the affected
        workqueues are clearly marked, so it's an easy gain for some
        configurations for the time being with pretty unintrusive changes."
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        fbcon: queue work on power efficient wq
        block: queue work on power efficient wq
        PHYLIB: queue work on system_power_efficient_wq
        workqueue: Add system wide power_efficient workqueues
        workqueues: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues
      f317ff9e
    • Linus Torvalds's avatar
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · 13cc5601
      Linus Torvalds authored
      Pull per-cpu changes from Tejun Heo:
       "This pull request contains Kent's per-cpu reference counter.  It has
        gone through several iterations since the last time and the dynamic
        allocation is gone.
      
        The usual usage is relatively straight-forward although async kill
        confirm interface, which is not used int most cases, is somewhat icky.
        There also are some interface concerns - e.g.  I'm not sure about
        passing in @relesae callback during init as that becomes funny when we
        later implement synchronous kill_and_drain - but nothing too serious
        and it's quite useable now.
      
        cgroup_subsys_state refcnting has already been converted and we should
        convert module refcnt (Kent?)"
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu-refcount: use RCU-sched insted of normal RCU
        percpu-refcount: implement percpu_tryget() along with percpu_ref_kill_and_confirm()
        percpu-refcount: implement percpu_ref_cancel_init()
        percpu-refcount: add __must_check to percpu_ref_init() and don't use ACCESS_ONCE() in percpu_ref_kill_rcu()
        percpu-refcount: cosmetic updates
        percpu-refcount: consistently use plain (non-sched) RCU
        percpu-refcount: Don't use silly cmpxchg()
        percpu: implement generic percpu refcounting
      13cc5601
  2. 02 Jul, 2013 26 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7c6809ff
      Linus Torvalds authored
      Pull x86 UV update from Ingo Molnar:
       "There's a single commit in this tree, which adds support for a new SGI
        UV GRU (Global Reference Unit - fast NUMA messaging ASIC) hardware
        feature to scale up and beyond: an optional distributed mode that will
        allow per-node address mapping of local GRU space, as opposed to
        mapping all GRU hardware to the same contiguous high space"
      
      * 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/UV: Add GRU distributed mode mappings
      7c6809ff
    • Linus Torvalds's avatar
      Merge branch 'x86-tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 96a3d998
      Linus Torvalds authored
      Pull x86 tracing updates from Ingo Molnar:
       "This tree adds IRQ vector tracepoints that are named after the handler
        and which output the vector #, based on a zero-overhead approach that
        relies on changing the IDT entries, by Seiji Aguchi.
      
        The new tracepoints look like this:
      
         # perf list | grep -i irq_vector
          irq_vectors:local_timer_entry                      [Tracepoint event]
          irq_vectors:local_timer_exit                       [Tracepoint event]
          irq_vectors:reschedule_entry                       [Tracepoint event]
          irq_vectors:reschedule_exit                        [Tracepoint event]
          irq_vectors:spurious_apic_entry                    [Tracepoint event]
          irq_vectors:spurious_apic_exit                     [Tracepoint event]
          irq_vectors:error_apic_entry                       [Tracepoint event]
          irq_vectors:error_apic_exit                        [Tracepoint event]
         [...]"
      
      * 'x86-tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tracing: Add config option checking to the definitions of mce handlers
        trace,x86: Do not call local_irq_save() in load_current_idt()
        trace,x86: Move creation of irq tracepoints from apic.c to irq.c
        x86, trace: Add irq vector tracepoints
        x86: Rename variables for debugging
        x86, trace: Introduce entering/exiting_irq()
        tracing: Add DEFINE_EVENT_FN() macro
      96a3d998
    • Linus Torvalds's avatar
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3045f94a
      Linus Torvalds authored
      Pull x86 RAS update from Ingo Molnar:
       "The changes in this tree are:
      
         - ACPI APEI (ACPI Platform Error Interface) improvements, by Chen
           Gong
         - misc MCE fixes/cleanups"
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Update MCE severity condition check
        mce: acpi/apei: Add comments to clarify usage of the various bitfields in the MCA subsystem
        ACPI/APEI: Update einj documentation for param1/param2
        ACPI/APEI: Add parameter check before error injection
        ACPI, APEI, EINJ: Fix error return code in einj_init()
        x86, mce: Fix "braodcast" typo
      3045f94a
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 52e8ad90
      Linus Torvalds authored
      Pull x86 platform updates from Ingo Molnar:
       "Two changes:
      
         - A Kconfig dependency fix/cleanup
      
         - Introduce the 'make kvmconfig' KVM configuration helper utility
           that turns the current .config into a KVM-bootable config.  Useful
           for debugging specific native kernel configs that have no KVM
           config options enabled on VM setups."
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform: Make X86_GOLDFISH depend on X86_EXTENDED_PLATFORM
        x86/platform: Add kvmconfig to the phony targets
        x86, platform, kvm, kconfig: Turn existing .config's into KVM-capable configs
      52e8ad90
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1982269a
      Linus Torvalds authored
      Pull x86 mm changes from Ingo Molnar:
       "Misc improvements:
      
         - Fix /proc/mtrr reporting
         - Fix ioremap printout
         - Remove the unused pvclock fixmap entry on 32-bit
         - misc cleanups"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ioremap: Correct function name output
        x86: Fix /proc/mtrr with base/size more than 44bits
        ix86: Don't waste fixmap entries
        x86/mm: Drop unneeded include <asm/*pgtable, page*_types.h>
        x86_64: Correct phys_addr in cleanup_highmap comment
      1982269a
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fdd78889
      Linus Torvalds authored
      Pull x86 microcode loading update from Ingo Molnar:
       "Two main changes that improve microcode loading on AMD CPUs:
      
         - Add support for all-in-one binary microcode files that concatenate
           the microcode images of multiple processor families, by Jacob Shin
      
         - Add early microcode loading (embedded in the initrd) support, also
           by Jacob Shin"
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, microcode, amd: Another early loading fixup
        x86, microcode, amd: Allow multiple families' bin files appended together
        x86, microcode, amd: Make find_ucode_in_initrd() __init
        x86, microcode, amd: Fix warnings and errors on with CONFIG_MICROCODE=m
        x86, microcode, amd: Early microcode patch loading support for AMD
        x86, microcode, amd: Refactor functions to prepare for early loading
        x86, microcode: Vendor abstract out save_microcode_in_initrd()
        x86, microcode, intel: Correct typo in printk
      fdd78889
    • Linus Torvalds's avatar
      Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d652df0b
      Linus Torvalds authored
      Pull x86 FPU changes from Ingo Molnar:
       "There are two bigger changes in this tree:
      
         - Add an [early-use-]safe static_cpu_has() variant and other
           robustness improvements, including the new X86_DEBUG_STATIC_CPU_HAS
           configurable debugging facility, motivated by recent obscure FPU
           code bugs, by Borislav Petkov
      
         - Reimplement FPU detection code in C and drop the old asm code, by
           Peter Anvin."
      
      * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, fpu: Use static_cpu_has_safe before alternatives
        x86: Add a static_cpu_has_safe variant
        x86: Sanity-check static_cpu_has usage
        x86, cpu: Add a synthetic, always true, cpu feature
        x86: Get rid of ->hard_math and all the FPU asm fu
      d652df0b
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4d6f843a
      Linus Torvalds authored
      Pull x86 EFI changes from Ingo Molnar:
       "Two fixes that should in principle increase robustness of our
        interaction with the EFI firmware, and a cleanup"
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, efi: retry ExitBootServices() on failure
        efi: Convert runtime services function ptrs
        UEFI: Don't pass boot services regions to SetVirtualAddressMap()
      4d6f843a
    • Linus Torvalds's avatar
      Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 55a0d3ff
      Linus Torvalds authored
      Pull x86 debug update from Ingo Molnar:
       "Misc debuggability improvements:
      
         - Optimize the x86 CPU register printout a bit
         - Expose the tboot TXT log via debugfs
         - Small do_debug() cleanup"
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tboot: Provide debugfs interfaces to access TXT log
        x86: Remove weird PTR_ERR() in do_debug
        x86/debug: Only print out DR registers if they are not power-on defaults
      55a0d3ff
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 35c23d5d
      Linus Torvalds authored
      Pull x86 cpu updates from Ingo Molnar:
       "Two changes:
      
         - Extend 32-bit double fault debugging aid to 64-bit
         - Fix a build warning"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/intel/cacheinfo: Shut up last long-standing warning
        x86: Extend #DF debugging aid to 64-bit
      35c23d5d
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 57935b26
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Misc x86 cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, reloc: Use xorl instead of xorq in relocate_kernel_64.S
        x86, cleanups: Remove extra tab in __flush_tlb_one()
        x86/mce: Remove check for CONFIG_X86_MCE_P4THERMAL
      57935b26
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5f16a8cf
      Linus Torvalds authored
      Pull x86 boot build fix from Ingo Molnar:
       "Small fixlet for the build process"
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Close opened file descriptor
      5f16a8cf
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 002e44bf
      Linus Torvalds authored
      Pull asm/x86 changes from Ingo Molnar:
       "Misc changes, with a bigger processor-flags cleanup/reorganization by
        Peter Anvin"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, asm, cleanup: Replace open-coded control register values with symbolic
        x86, processor-flags: Fix the datatypes and add bit number defines
        x86: Rename X86_CR4_RDWRGSFS to X86_CR4_FSGSBASE
        x86, flags: Rename X86_EFLAGS_BIT1 to X86_EFLAGS_FIXED
        linux/const.h: Add _BITUL() and _BITULL()
        x86/vdso: Convert use of typedef ctl_table to struct ctl_table
        x86: __force_order doesn't need to be an actual variable
      002e44bf
    • Linus Torvalds's avatar
      Merge branch 'sched-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e13053f5
      Linus Torvalds authored
      Pull voluntary preemption fixes from Ingo Molnar:
       "This tree contains a speedup which is achieved through better
        might_sleep()/might_fault() preemption point annotations for uaccess
        functions, by Michael S Tsirkin:
      
        1. The only reason uaccess routines might sleep is if they fault.
           Make this explicit for all architectures.
      
        2. A voluntary preemption point in uaccess functions means compiler
           can't inline them efficiently, this breaks assumptions that they
           are very fast and small that e.g.  net code seems to make.  Remove
           this preemption point so behaviour matches with what callers
           assume.
      
        3. Accesses (e.g through socket ops) to kernel memory with KERNEL_DS
           like net/sunrpc does will never sleep.  Remove an unconditinal
           might_sleep() in the might_fault() inline in kernel.h (used when
           PROVE_LOCKING is not set).
      
        4. Accesses with pagefault_disable() return EFAULT but won't cause
           caller to sleep.  Check for that and thus avoid might_sleep() when
           PROVE_LOCKING is set.
      
        These changes offer a nice speedup for CONFIG_PREEMPT_VOLUNTARY=y
        kernels, here's a network bandwidth measurement between a virtual
        machine and the host:
      
         before:
              incoming: 7122.77   Mb/s
              outgoing: 8480.37   Mb/s
      
         after:
              incoming: 8619.24   Mb/s   [ +21.0% ]
              outgoing: 9455.42   Mb/s   [ +11.5% ]
      
        I kept these changes in a separate tree, separate from scheduler
        changes, because it's a mixed MM and scheduler topic"
      
      * 'sched-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        mm, sched: Allow uaccess in atomic with pagefault_disable()
        mm, sched: Drop voluntary schedule from might_fault()
        x86: uaccess s/might_sleep/might_fault/
        tile: uaccess s/might_sleep/might_fault/
        powerpc: uaccess s/might_sleep/might_fault/
        mn10300: uaccess s/might_sleep/might_fault/
        microblaze: uaccess s/might_sleep/might_fault/
        m32r: uaccess s/might_sleep/might_fault/
        frv: uaccess s/might_sleep/might_fault/
        arm64: uaccess s/might_sleep/might_fault/
        asm-generic: uaccess s/might_sleep/might_fault/
      e13053f5
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2d722f6d
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The main changes:
      
         - load-calculation cleanups and improvements, by Alex Shi
         - various nohz related tidying up of statisics, by Frederic
           Weisbecker
         - factor out /proc functions to kernel/sched/proc.c, by Paul
           Gortmaker
         - simplify the RT policy scheduler, by Kirill Tkhai
         - various fixes and cleanups"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (42 commits)
        sched/debug: Remove CONFIG_FAIR_GROUP_SCHED mask
        sched/debug: Fix formatting of /proc/<PID>/sched
        sched: Fix typo in struct sched_avg member description
        sched/fair: Fix typo describing flags in enqueue_entity
        sched/debug: Add load-tracking statistics to task
        sched: Change get_rq_runnable_load() to static and inline
        sched/tg: Remove tg.load_weight
        sched/cfs_rq: Change atomic64_t removed_load to atomic_long_t
        sched/tg: Use 'unsigned long' for load variable in task group
        sched: Change cfs_rq load avg to unsigned long
        sched: Consider runnable load average in move_tasks()
        sched: Compute runnable load avg in cpu_load and cpu_avg_load_per_task
        sched: Update cpu load after task_tick
        sched: Fix sleep time double accounting in enqueue entity
        sched: Set an initial value of runnable avg for new forked task
        sched: Move a few runnable tg variables into CONFIG_SMP
        Revert "sched: Introduce temporary FAIR_GROUP_SCHED dependency for load-tracking"
        sched: Don't mix use of typedef ctl_table and struct ctl_table
        sched: Remove WARN_ON(!sd) from init_sched_groups_power()
        sched: Fix memory leakage in build_sched_groups()
        ...
      2d722f6d
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f0bb4c0a
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Kernel improvements:
      
         - watchdog driver improvements by Li Zefan
         - Power7 CPI stack events related improvements by Sukadev Bhattiprolu
         - event multiplexing via hrtimers and other improvements by Stephane
           Eranian
         - kernel stack use optimization by Andrew Hunter
         - AMD IOMMU uncore PMU support by Suravee Suthikulpanit
         - NMI handling rate-limits by Dave Hansen
         - various hw_breakpoint fixes by Oleg Nesterov
         - hw_breakpoint overflow period sampling and related signal handling
           fixes by Jiri Olsa
         - Intel Haswell PMU support by Andi Kleen
      
        Tooling improvements:
      
         - Reset SIGTERM handler in workload child process, fix from David
           Ahern.
         - Makefile reorganization, prep work for Kconfig patches, from Jiri
           Olsa.
         - Add automated make test suite, from Jiri Olsa.
         - Add --percent-limit option to 'top' and 'report', from Namhyung
           Kim.
         - Sorting improvements, from Namhyung Kim.
         - Expand definition of sysfs format attribute, from Michael Ellerman.
      
        Tooling fixes:
      
         - 'perf tests' fixes from Jiri Olsa.
         - Make Power7 CPI stack events available in sysfs, from Sukadev
           Bhattiprolu.
         - Handle death by SIGTERM in 'perf record', fix from David Ahern.
         - Fix printing of perf_event_paranoid message, from David Ahern.
         - Handle realloc failures in 'perf kvm', from David Ahern.
         - Fix divide by 0 in variance, from David Ahern.
         - Save parent pid in thread struct, from David Ahern.
         - Handle JITed code in shared memory, from Andi Kleen.
         - Fixes for 'perf diff', from Jiri Olsa.
         - Remove some unused struct members, from Jiri Olsa.
         - Add missing liblk.a dependency for python/perf.so, fix from Jiri
           Olsa.
         - Respect CROSS_COMPILE in liblk.a, from Rabin Vincent.
         - No need to do locking when adding hists in perf report, only 'top'
           needs that, from Namhyung Kim.
         - Fix alignment of symbol column in in the hists browser (top,
           report) when -v is given, from NAmhyung Kim.
         - Fix 'perf top' -E option behavior, from Namhyung Kim.
         - Fix bug in isupper() and islower(), from Sukadev Bhattiprolu.
         - Fix compile errors in bp_signal 'perf test', from Sukadev
           Bhattiprolu.
      
        ... and more things"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (102 commits)
        perf/x86: Disable PEBS-LL in intel_pmu_pebs_disable()
        perf/x86: Fix shared register mutual exclusion enforcement
        perf/x86/intel: Support full width counting
        x86: Add NMI duration tracepoints
        perf: Drop sample rate when sampling is too slow
        x86: Warn when NMI handlers take large amounts of time
        hw_breakpoint: Introduce "struct bp_cpuinfo"
        hw_breakpoint: Simplify *register_wide_hw_breakpoint()
        hw_breakpoint: Introduce cpumask_of_bp()
        hw_breakpoint: Simplify the "weight" usage in toggle_bp_slot() paths
        hw_breakpoint: Simplify list/idx mess in toggle_bp_slot() paths
        perf/x86/intel: Add mem-loads/stores support for Haswell
        perf/x86/intel: Support Haswell/v4 LBR format
        perf/x86/intel: Move NMI clearing to end of PMI handler
        perf/x86/intel: Add Haswell PEBS support
        perf/x86/intel: Add simple Haswell PMU support
        perf/x86/intel: Add Haswell PEBS record support
        perf/x86/intel: Fix sparse warning
        perf/x86/amd: AMD IOMMU Performance Counter PERF uncore PMU implementation
        perf/x86/amd: Add IOMMU Performance Counter resource management
        ...
      f0bb4c0a
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a4883ef6
      Linus Torvalds authored
      Pull core irq changes from Ingo Molnar:
       "The main changes:
      
        - generic-irqchip driver additions, cleanups and fixes
      
        - 3 new irqchip drivers: ARMv7-M NVIC, TB10x and Marvell Orion SoCs
      
        - irq_get_trigger_type() simplification and cross-arch cleanup
      
        - various cleanups, simplifications
      
        - documentation updates"
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (26 commits)
        softirq: Use _RET_IP_
        genirq: Add the generic chip to the genirq docbook
        genirq: generic-chip: Export some irq_gc_ functions
        genirq: Fix can_request_irq() for IRQs without an action
        irqchip: exynos-combiner: Staticize combiner_init
        irqchip: Add support for ARMv7-M NVIC
        irqchip: Add TB10x interrupt controller driver
        irqdomain: Use irq_get_trigger_type() to get IRQ flags
        MIPS: octeon: Use irq_get_trigger_type() to get IRQ flags
        arm: orion: Use irq_get_trigger_type() to get IRQ flags
        mfd: stmpe: use irq_get_trigger_type() to get IRQ flags
        mfd: twl4030-irq: Use irq_get_trigger_type() to get IRQ flags
        gpio: mvebu: Use irq_get_trigger_type() to get IRQ flags
        genirq: Add irq_get_trigger_type() to get IRQ flags
        genirq: Irqchip: document gcflags arg of irq_alloc_domain_generic_chips
        genirq: Set irq thread to RT priority on creation
        irqchip: Add support for Marvell Orion SoCs
        genirq: Add kerneldoc for irq_disable.
        genirq: irqchip: Add mask to block out invalid irqs
        genirq: Generic chip: Add linear irq domain support
        ...
      a4883ef6
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ab3d681e
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "The major changes:
      
        - Simplify RCU's grace-period and callback processing based on the new
          numbering for callbacks.
      
        - Removal of TINY_PREEMPT_RCU in favor of TREE_PREEMPT_RCU for
          single-CPU low-latency systems.
      
        - SRCU-related changes and fixes.
      
        - Miscellaneous fixes, including converting a few remaining printk()
          calls to pr_*().
      
        - Documentation updates"
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (32 commits)
        rcu: Shrink TINY_RCU by reworking CPU-stall ifdefs
        rcu: Shrink TINY_RCU by moving exit_rcu()
        rcu: Remove TINY_PREEMPT_RCU tracing documentation
        rcu: Consolidate rcutiny_plugin.h ifdefs
        rcu: Remove rcu_preempt_note_context_switch()
        rcu: Remove the CONFIG_TINY_RCU ifdefs in rcutiny.h
        rcu: Remove check_cpu_stall_preempt()
        rcu: Simplify RCU_TINY RCU callback invocation
        rcu: Remove rcu_preempt_process_callbacks()
        rcu: Remove rcu_preempt_remove_callbacks()
        rcu: Remove rcu_preempt_check_callbacks()
        rcu: Remove show_tiny_preempt_stats()
        rcu: Remove TINY_PREEMPT_RCU
        powerpc,kvm: fix imbalance srcu_read_[un]lock()
        rcu: Remove srcu_read_lock_raw() and srcu_read_unlock_raw().
        rcu: Apply Dave Jones's NOCB Kconfig help feedback
        rcu: Merge adjacent identical ifdefs
        rcu: Drive quiescent-state-forcing delay from HZ
        rcu: Remove "Experimental" flags
        kthread: Add kworker kthreads to OS-jitter documentation
        ...
      ab3d681e
    • Linus Torvalds's avatar
      Merge branch 'core-mutexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0c46d68d
      Linus Torvalds authored
      Pull WW mutex support from Ingo Molnar:
       "This tree adds support for wound/wait style locks, which the graphics
        guys would like to make use of in the TTM graphics subsystem.
      
        Wound/wait mutexes are used when other multiple lock acquisitions of a
        similar type can be done in an arbitrary order.  The deadlock handling
        used here is called wait/wound in the RDBMS literature: The older
        tasks waits until it can acquire the contended lock.  The younger
        tasks needs to back off and drop all the locks it is currently
        holding, ie the younger task is wounded.
      
        See this LWN.net description of W/W mutexes:
      
           https://lwn.net/Articles/548909/
      
        The comments there outline specific usecases for this facility (which
        have already been implemented for the DRM tree).
      
        Also see Documentation/ww-mutex-design.txt for more details"
      
      * 'core-mutexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking-selftests: Handle unexpected failures more strictly
        mutex: Add more w/w tests to test EDEADLK path handling
        mutex: Add more tests to lib/locking-selftest.c
        mutex: Add w/w tests to lib/locking-selftest.c
        mutex: Add w/w mutex slowpath debugging
        mutex: Add support for wound/wait style locks
        arch: Make __mutex_fastpath_lock_retval return whether fastpath succeeded or not
      0c46d68d
    • Linus Torvalds's avatar
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3e42dee6
      Linus Torvalds authored
      Pull locking changes from Ingo Molnar:
       "Four miscellanous standalone fixes for futexes, rtmutexes and
        Kconfig.locks."
      
      * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        futex: Use freezable blocking call
        futex: Take hugepages into account when generating futex_key
        rtmutex: Document rt_mutex_adjust_prio_chain()
        locking: Fix copy/paste errors of "ARCH_INLINE_*_UNLOCK_BH"
      3e42dee6
    • Linus Torvalds's avatar
      Merge tag 'late-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 42daabf6
      Linus Torvalds authored
      Pull ARM SoC late changes from Arnd Bergmann:
       "These are changes that arrived a little late before the merge window
        or that have multiple dependencies on previous branches so they did
        not fit into one of the earlier ones.  There are 10 branches merged
        here, a total of 39 non-merge commits.  Contents are a mixed bag for
        the above reasons:
      
         * Two new SoC platforms: ST microelectronics stixxxx and the TI
           'Nspire' graphing calculator.  These should have been in the 'soc'
           branch but were a little late
         * Support for the Exynos 5420 variant in mach-exynos, which is based
           on the other exynos branches to avoid conflicts.
         * Various small changes for sh-mobile, ux500 and davinci
         * Common clk support for MSM"
      
      * tag 'late-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (39 commits)
        ARM: ux500: bail out on alien cpus
        ARM: davinci: da850: adopt to pinctrl-single change for configuring multiple pins
        serial: sh-sci: Initialise variables before access in sci_set_termios()
        ARM: stih41x: Add B2020 board support
        ARM: stih41x: Add B2000 board support
        ARM: sti: Add DEBUG_LL console support
        ARM: sti: Add STiH416 SOC support
        ARM: sti: Add STiH415 SOC support
        ARM: msm: Migrate to common clock framework
        ARM: msm: Make proc_comm clock control into a platform driver
        ARM: msm: Prepare clk_get() users in mach-msm for clock-pcom driver
        ARM: msm: Remove clock-7x30.h include file
        ARM: msm: Remove custom clk_set_{max,min}_rate() API
        ARM: msm: Remove custom clk_set_flags() API
        msm: iommu: Use clk_set_rate() instead of clk_set_min_rate()
        msm: iommu: Convert to clk_prepare/unprepare
        msm_sdcc: Convert to clk_prepare/unprepare
        usb: otg: msm: Convert to clk_prepare/unprepare
        msm_serial: Use devm_clk_get() and properly return errors
        msm_serial: Convert to clk_prepare/unprepare
        ...
      42daabf6
    • Linus Torvalds's avatar
      Merge tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 0bf6a210
      Linus Torvalds authored
      Pull ARM SoC driver specific changes from Arnd Bergmann:
       "These changes are all driver specific and cross over between arm-soc
        contents and some other subsystem, in these cases cpufreq, crypto,
        dma, pinctrl, mailbox and usb, and the subsystem owners agreed to have
        these changes merged through arm-soc.
      
        As we proceed to untangle the dependencies between platform code and
        driver code, the amount of changes in this category is fortunately
        shrinking, for 3.11 we have 16 branches here and 101 non-merge
        changesets, the majority of which are for the stedma40 dma engine
        driver used in the ux500 platform.  Cleaning up that code touches
        multiple subsystems, but gets rid of the dependency in the end.
      
        The mailbox code moved out from mach-omap2 to drivers/mailbox is an
        intermediate step and is still omap specific at the moment.  Patches
        exist to generalize the subsystem and add other drivers with the same
        API, but those did not make it for 3.11."
      
      * tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (101 commits)
        crypto: ux500: use dmaengine_submit API
        crypto: ux500: use dmaengine_prep_slave_sg API
        crypto: ux500: use dmaengine_device_control API
        crypto: ux500/crypt: add missing __iomem qualifiers
        crypto: ux500/hash: add missing static qualifiers
        crypto: ux500/hash: use readl on iomem addresses
        dmaengine: ste_dma40: Declare memcpy config as static
        ARM: ux500: Remove mop500_snowball_ethernet_clock_enable()
        ARM: ux500: Correct the EN_3v3 regulator's on/off GPIO
        ARM: ux500: Provide a AB8500 GPIO Device Tree node
        gpio: rcar: fix gpio_rcar_of_table
        gpio-rcar: Remove #ifdef CONFIG_OF around OF-specific sections
        gpio-rcar: Reference core gpio documentation in the DT bindings
        clk: exynos5250: Add enum entries for divider clock of i2s1 and i2s2
        ARM: dts: Update Samsung I2S documentation
        ARM: dts: add clock provider information for i2s controllers in Exynos5250
        ARM: dts: add Exynos audio subsystem clock controller node
        clk: samsung: register audio subsystem clocks using common clock framework
        ARM: dts: use #include for all device trees for Samsung
        pinctrl: s3c24xx: use correct header for chained_irq functions
        ...
      0bf6a210
    • Linus Torvalds's avatar
      Merge tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · ee1a8d40
      Linus Torvalds authored
      Pull ARM SoC device tree changes from Arnd Bergmann:
       "These changes from 30 individual branches for the most part update
        device tree files, but there are also a few source code changes that
        have crept in this time, usually in order to atomically move over a
        driver from using hardcoded data to DT probing.
      
        A number of platforms change their DT files to use the C preprocessor,
        which is causing a bit of churn, but that is hopefully only this once"
      
      * tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (372 commits)
        ARM: at91: dt: rm9200ek: add spi support
        ARM: at91: dt: rm9200: add spi support
        ARM: at91/DT: at91sam9n12: add SPI DMA client infos
        ARM: at91/DT: sama5d3: add SPI DMA client infos
        ARM: at91/DT: fix SPI compatibility string
        ARM: Kirkwood: Fix the internal register ranges translation
        ARM: dts: bcm281xx: change comment to C89 style
        ARM: mmc: bcm281xx SDHCI driver (dt mods)
        ARM: nomadik: add the new clocks to the device tree
        clk: nomadik: implement the Nomadik clocks properly
        ARM: dts: omap5-uevm: Provide USB Host PHY clock frequency
        ARM: dts: omap4-panda: Fix DVI EDID reads
        ARM: dts: omap4-panda: Add USB Host support
        arm: mvebu: enable mini-PCIe connectors on Armada 370 RD
        ARM: shmobile: irqpin: add a DT property to enable masking on parent
        ARM: dts: AM43x EPOS EVM support
        ARM: dts: OMAP5: Add bandgap DT entry
        ARM: dts: AM33XX: Add pinmux configuration for CPSW to am335x EVM
        ARM: dts: AM33XX: Add pinmux configuration for CPSW to EVMsk
        ARM: dts: AM33XX: Add pinmux configuration for CPSW to beaglebone
        ...
      ee1a8d40
    • Linus Torvalds's avatar
      Merge tag 'boards-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 40e71e70
      Linus Torvalds authored
      Pull ARM SoC board specific changes from Arnd Bergmann:
       "These are 18 branches on 9 platforms with board specific changes,
        mostly for defconfig files, but nothing really exciting in here.
      
        Since the shmobile platform still uses board files for some of the
        newer machines, we get a few changes there as the result of drivers
        getting enabled for those boards.  This causes some conflicts with
        contents getting added from multiple branches in sh-mobile specific
        files.  Renesas is putting a lot of work into migrating to device-tree
        based setup, which will make all those files obsolete in the future
        and avoid both the conflicts and the need to have these files in the
        first place."
      
      * tag 'boards-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (49 commits)
        arm: multi_v7_defconfig: Enable initrd/initramfs support
        arm: multi_v7_defconfig: Enable Zynq UART driver
        ARM: omap2plus_defconfig: enable USB_PHY and NOP_USB_XCEIV
        ARM: OMAP1: nokia770: enable Tahvo
        ARM: OMAP3EVM: Marking omap3_evm_display_init() with CONFIG_BROKEN
        arm: omap: board-overo: reset GPIO for SMSC911x
        ARM: shmobile: BOCK-W: change Ether device name
        ARM: ux500: board-mop500: remove unused pin modes
        ARM: shmobile: bockw: add MMCIF support
        ARM: shmobile: bockw: add SPI FLASH support
        ARM: shmobile: bockw: add I2C device support
        ARM: shmobile: BOCK-W: add Ether support
        ARM: tegra: defconfig updates
        ARM: shmobile: bockw defconfig: add MMCIF support
        ARM: shmobile: bockw defconfig: add M25P80 support
        ARM: shmobile: bockw defconfig: add RTC RX8581 support
        ARM: shmobile: marzen: keep local function as static
        ARM: shmobile: bockw: add SDHI0 support
        ARM: shmobile: marzen: Use INTC External IRQ pin driver for SMSC
        ARM: shmobile: lager: support GPIO switches
        ...
      40e71e70
    • Linus Torvalds's avatar
      Merge tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 3883cbb6
      Linus Torvalds authored
      Pull ARM SoC specific changes from Arnd Bergmann:
       "These changes are all to SoC-specific code, a total of 33 branches on
        17 platforms were pulled into this.  Like last time, Renesas sh-mobile
        is now the platform with the most changes, followed by OMAP and
        EXYNOS.
      
        Two new platforms, TI Keystone and Rockchips RK3xxx are added in this
        branch, both containing almost no platform specific code at all, since
        they are using generic subsystem interfaces for clocks, pinctrl,
        interrupts etc.  The device drivers are getting merged through the
        respective subsystem maintainer trees.
      
        One more SoC (u300) is now multiplatform capable and several others
        (shmobile, exynos, msm, integrator, kirkwood, clps711x) are moving
        towards that goal with this series but need more work.
      
        Also noteworthy is the work on PCI here, which is traditionally part
        of the SoC specific code.  With the changes done by Thomas Petazzoni,
        we can now more easily have PCI host controller drivers as loadable
        modules and keep them separate from the platform code in
        drivers/pci/host.  This has already led to the discovery that three
        platforms (exynos, spear and imx) are actually using an identical PCIe
        host controller and will be able to share a driver once support for
        spear and imx is added."
      
      * tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (480 commits)
        ARM: integrator: let pciv3 use mem/premem from device tree
        ARM: integrator: set local side PCI addresses right
        ARM: dts: Add pcie controller node for exynos5440-ssdk5440
        ARM: dts: Add pcie controller node for Samsung EXYNOS5440 SoC
        ARM: EXYNOS: Enable PCIe support for Exynos5440
        pci: Add PCIe driver for Samsung Exynos
        ARM: OMAP5: voltagedomain data: remove temporary OMAP4 voltage data
        ARM: keystone: Move CPU bringup code to dedicated asm file
        ARM: multiplatform: always pick one CPU type
        ARM: imx: select syscon for IMX6SL
        ARM: keystone: select ARM_ERRATA_798181 only for SMP
        ARM: imx: Synertronixx scb9328 needs to select SOC_IMX1
        ARM: OMAP2+: AM43x: resolve SMP related build error
        dmaengine: edma: enable build for AM33XX
        ARM: edma: Add EDMA crossbar event mux support
        ARM: edma: Add DT and runtime PM support to the private EDMA API
        dmaengine: edma: Add TI EDMA device tree binding
        arm: add basic support for Rockchip RK3066a boards
        arm: add debug uarts for rockchip rk29xx and rk3xxx series
        arm: Add basic clocks for Rockchip rk3066a SoCs
        ...
      3883cbb6
    • Linus Torvalds's avatar
      Merge tag 'cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · d2033f2c
      Linus Torvalds authored
      Pull ARM SoC cleanups from Arnd Bergmann:
       "This contains cleanups as preparation for other branches adding new
        features, we pulled 16 branches for 9 platforms into this one.
      
        Most notable here is the removal of support for ATAGS based OMAP4
        systems.  Since all OMAP4 machines are fully functional with DT based
        booting in 3.10, we can remove a lot of code here.
      
        Also noteworthy is Maxime Ripard's cleanup of the machine descriptors,
        which means we need no machine descriptors in a lot more cases and can
        boot additional machines by just having the respective device drivers
        enabled."
      
      * tag 'cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (76 commits)
        ARM: picoxcell: remove .nr_irqs reference
        ARM: s5p64x0: avoid build warning for uncompress.h
        ARM: SAMSUNG: Remove unused plat/regs-watchdog.h header
        ARM: SAMSUNG: Remove legacy watchdog reset code
        ARM: SAMSUNG: Let platforms use the new watchdog reset driver
        ARM: SAMSUNG: Add watchdog reset driver
        ARM: SAMSUNG: Use local definitions of watchdog registers
        watchdog: s3c2410_wdt: Use local register definitions
        ARM: S5P64X0: Use common uncompress.h part for plat-samsung
        ARM: SAMSUNG: Consolidate uncompress subroutine
        ARM: at91: drop rm9200dk board support
        ARM: dts: msm: Fix merge resolution
        ARM: OMAP1: Remove dma.h
        ARM: OMAP1: Remove legacy irda.h and irda setup from board files
        ARM: OMAP1: Remove duplicated DMA channel definitions
        ARM: OMAP1: Remove McBSP DMA channel definitions
        ARM: OMAP2+: Remove dma.h
        ARM: OMAP2+: hwmod: Remove remaining DMA channel definitions
        ARM: OMAP2+: Remove duplicated DMA channel definitions
        ARM: OMAP2+: Remove AES crypto device DMA channel definitions
        ...
      d2033f2c