1. 21 1月, 2014 25 次提交
    • L
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8bd6964c
      Linus Torvalds 提交于
      Pull x86 mm changes from Ingo Molnar:
       "A cleanup, a fix and ASLR support for hugetlb mappings"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm/numa: Fix 32-bit kernel NUMA boot
        x86/mm: Implement ASLR for hugetlb mappings
        x86/mm: Unify pte_to_pgoff() and pgoff_to_pte() helpers
      8bd6964c
    • L
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2bb2c5e2
      Linus Torvalds 提交于
      Pull x86 microcode loader updates from Ingo Molnar:
       "There are two main changes in this tree:
      
         - AMD microcode early loading fixes
         - some microcode loader source files reorganization"
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, microcode: Move to a proper location
        x86, microcode, AMD: Fix early ucode loading
        x86, microcode: Share native MSR accessing variants
        x86, ramdisk: Export relocated ramdisk VA
      2bb2c5e2
    • L
      Merge branch 'x86-intel-mid-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4500cf60
      Linus Torvalds 提交于
      Pull Intel MID updates from Ingo Molnar:
       "This tree improves Intel MID (Mobile Internet Device) platform
        support:
      
         - Merrifield platform support (David Cohen)
         - Clovertrail platform support (Kuppuswamy Sathyanarayanan)
         - Various cleanups and fixes (David Cohen)"
      
      * 'x86-intel-mid-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, intel_mid: Replace memcpy with struct assignment
        x86, intel-mid: Return proper error code from get_gpio_by_name()
        x86, intel-mid: Check get_gpio_by_name() error code on platform code
        x86, intel-mid: sfi_handle_*_dev() should check for pdata error code
        x86, intel-mid: Remove deprecated X86_MDFLD and X86_WANT_INTEL_MID configs
        x86, intel-mid: Add Merrifield platform support
        x86, intel-mid: Add Clovertrail platform support
        x86, intel-mid: Move Medfield code out of intel-mid.c core file
      4500cf60
    • L
      Merge branch 'x86-efi-kexec-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 972d5e7e
      Linus Torvalds 提交于
      Pull x86 EFI changes from Ingo Molnar:
       "This consists of two main parts:
      
         - New static EFI runtime services virtual mapping layout which is
           groundwork for kexec support on EFI (Borislav Petkov)
      
         - EFI kexec support itself (Dave Young)"
      
      * 'x86-efi-kexec-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
        x86/efi: parse_efi_setup() build fix
        x86: ksysfs.c build fix
        x86/efi: Delete superfluous global variables
        x86: Reserve setup_data ranges late after parsing memmap cmdline
        x86: Export x86 boot_params to sysfs
        x86: Add xloadflags bit for EFI runtime support on kexec
        x86/efi: Pass necessary EFI data for kexec via setup_data
        efi: Export EFI runtime memory mapping to sysfs
        efi: Export more EFI table variables to sysfs
        x86/efi: Cleanup efi_enter_virtual_mode() function
        x86/efi: Fix off-by-one bug in EFI Boot Services reservation
        x86/efi: Add a wrapper function efi_map_region_fixed()
        x86/efi: Remove unused variables in __map_region()
        x86/efi: Check krealloc return value
        x86/efi: Runtime services virtual mapping
        x86/mm/cpa: Map in an arbitrary pgd
        x86/mm/pageattr: Add last levels of error path
        x86/mm/pageattr: Add a PUD error unwinding path
        x86/mm/pageattr: Add a PTE pagetable populating function
        x86/mm/pageattr: Add a PMD pagetable populating function
        ...
      972d5e7e
    • L
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5d4863e4
      Linus Torvalds 提交于
      Pull x86 TLB detection update from Ingo Molnar:
       "A single change that extends our TLB cache size detection+reporting
        code"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, cpu: Detect more TLB configuration
      5d4863e4
    • L
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2a0fede9
      Linus Torvalds 提交于
      Pull x86 cleanups from Ingo Molnar:
       "Misc cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, cpu, amd: Fix a shadowed variable situation
        um, x86: Fix vDSO build
        x86: Delete non-required instances of include <linux/init.h>
        x86, realmode: Pointer walk cleanups, pull out invariant use of __pa()
        x86/traps: Clean up error exception handler definitions
      2a0fede9
    • L
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 06bc0f4a
      Linus Torvalds 提交于
      Pull x86/build changes from Ingo Molnar:
       "Misc smaller improvements"
      
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, boot: Move intcall() to the .inittext section
        x86, boot: Use .code16 instead of .code16gcc
        x86, sparse: Do not force removal of __user when calling copy_to/from_user_nocheck()
      06bc0f4a
    • L
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4cd41569
      Linus Torvalds 提交于
      Pull x86/asm changes from Ingo Molnar:
       "Misc optimizations"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Slightly tweak the access_ok() C variant for better code
        x86: Replace assembly access_ok() with a C variant
        x86-64, copy_user: Use leal to produce 32-bit results
        x86-64, copy_user: Remove zero byte check before copy user buffer.
      4cd41569
    • L
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1a7dbbcc
      Linus Torvalds 提交于
      Pull x86/apic changes from Ingo Molnar:
       "Two main changes:
      
         - improve local APIC Error Status Register reporting robustness
      
         - add the 'disable_cpu_apicid=x' boot parameter for kexec booting"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, apic: Make disabled_cpu_apicid static read_mostly, fix typos
        x86, apic, kexec: Add disable_cpu_apicid kernel parameter
        x86/apic: Read Error Status Register correctly
      1a7dbbcc
    • L
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6c646143
      Linus Torvalds 提交于
      Pull timer changes from Ingo Molnar:
        - ARM clocksource/clockevent improvements and fixes
        - generic timekeeping updates: TAI fixes/improvements, cleanups
        - Posix cpu timer cleanups and improvements
        - dynticks updates: full dynticks bugfixes, optimizations and cleanups
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (46 commits)
        clocksource: Timer-sun5i: Switch to sched_clock_register()
        timekeeping: Remove comment that's mostly out of date
        rtc-cmos: Add an alarm disable quirk
        timekeeper: fix comment typo for tk_setup_internals()
        timekeeping: Fix missing timekeeping_update in suspend path
        timekeeping: Fix CLOCK_TAI timer/nanosleep delays
        tick/timekeeping: Call update_wall_time outside the jiffies lock
        timekeeping: Avoid possible deadlock from clock_was_set_delayed
        timekeeping: Fix potential lost pv notification of time change
        timekeeping: Fix lost updates to tai adjustment
        clocksource: sh_cmt: Add clk_prepare/unprepare support
        clocksource: bcm_kona_timer: Remove unused bcm_timer_ids
        clocksource: vt8500: Remove deprecated IRQF_DISABLED
        clocksource: tegra: Remove deprecated IRQF_DISABLED
        clocksource: misc drivers: Remove deprecated IRQF_DISABLED
        clocksource: sh_mtu2: Remove unnecessary platform_set_drvdata()
        clocksource: sh_tmu: Remove unnecessary platform_set_drvdata()
        clocksource: armada-370-xp: Enable timer divider only when needed
        clocksource: clksrc-of: Warn if no clock sources are found
        clocksource: orion: Switch to sched_clock_register()
        ...
      6c646143
    • L
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a0fa1dd3
      Linus Torvalds 提交于
      Pull scheduler changes from Ingo Molnar:
      
       - Add the initial implementation of SCHED_DEADLINE support: a real-time
         scheduling policy where tasks that meet their deadlines and
         periodically execute their instances in less than their runtime quota
         see real-time scheduling and won't miss any of their deadlines.
         Tasks that go over their quota get delayed (Available to privileged
         users for now)
      
       - Clean up and fix preempt_enable_no_resched() abuse all around the
         tree
      
       - Do sched_clock() performance optimizations on x86 and elsewhere
      
       - Fix and improve auto-NUMA balancing
      
       - Fix and clean up the idle loop
      
       - Apply various cleanups and fixes
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (60 commits)
        sched: Fix __sched_setscheduler() nice test
        sched: Move SCHED_RESET_ON_FORK into attr::sched_flags
        sched: Fix up attr::sched_priority warning
        sched: Fix up scheduler syscall LTP fails
        sched: Preserve the nice level over sched_setscheduler() and sched_setparam() calls
        sched/core: Fix htmldocs warnings
        sched/deadline: No need to check p if dl_se is valid
        sched/deadline: Remove unused variables
        sched/deadline: Fix sparse static warnings
        m68k: Fix build warning in mac_via.h
        sched, thermal: Clean up preempt_enable_no_resched() abuse
        sched, net: Fixup busy_loop_us_clock()
        sched, net: Clean up preempt_enable_no_resched() abuse
        sched/preempt: Fix up missed PREEMPT_NEED_RESCHED folding
        sched/preempt, locking: Rework local_bh_{dis,en}able()
        sched/clock, x86: Avoid a runtime condition in native_sched_clock()
        sched/clock: Fix up clear_sched_clock_stable()
        sched/clock, x86: Use a static_key for sched_clock_stable
        sched/clock: Remove local_irq_disable() from the clocks
        sched/clock, x86: Rewrite cyc2ns() to avoid the need to disable IRQs
        ...
      a0fa1dd3
    • L
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9326657a
      Linus Torvalds 提交于
      Pull perf updates from Ingo Molnar:
       "Kernel side changes:
      
         - Add Intel RAPL energy counter support (Stephane Eranian)
         - Clean up uprobes (Oleg Nesterov)
         - Optimize ring-buffer writes (Peter Zijlstra)
      
        Tooling side changes, user visible:
      
         - 'perf diff':
           - Add column colouring improvements (Ramkumar Ramachandra)
      
        - 'perf kvm':
           - Add guest related improvements, including allowing to specify a
             directory with guest specific /proc information (Dongsheng Yang)
           - Add shell completion support (Ramkumar Ramachandra)
           - Add '-v' option (Dongsheng Yang)
           - Support --guestmount (Dongsheng Yang)
      
         - 'perf probe':
           - Support showing source code, asking for variables to be collected
             at probe time and other 'perf probe' operations that use DWARF
             information.
      
             This supports only binaries with debugging information at this
             time, detached debuginfo (aka debuginfo packages) support should
             come in later patches (Masami Hiramatsu)
      
         - 'perf record':
           - Rename --no-delay option to --no-buffering, better reflecting its
             purpose and freeing up '--delay' to take the place of
             '--initial-delay', so that 'record' and 'stat' are consistent
             (Arnaldo Carvalho de Melo)
           - Default the -t/--thread option to no inheritance (Adrian Hunter)
           - Make per-cpu mmaps the default (Adrian Hunter)
      
         - 'perf report':
           - Improve callchain processing performance (Frederic Weisbecker)
           - Retain bfd reference to lookup source line numbers, greatly
             optimizing, among other use cases, 'perf report -s srcline'
             (Adrian Hunter)
           - Improve callchain processing performance even more (Namhyung Kim)
           - Add a perf.data file header window in the 'perf report' TUI,
             associated with the 'i' hotkey, providing a counterpart to the
             --header option in the stdio UI (Namhyung Kim)
      
         - 'perf script':
           - Add an option in 'perf script' to print the source line number
             (Adrian Hunter)
           - Add --header/--header-only options to 'script' and 'report', the
             default is not tho show the header info, but as this has been the
             default for some time, leave a single line explaining how to
             obtain that information (Jiri Olsa)
           - Add options to show comm, fork, exit and mmap PERF_RECORD_ events
             (Namhyung Kim)
           - Print callchains and symbols if they exist (David Ahern)
      
         - 'perf timechart'
           - Add backtrace support to CPU info
           - Print pid along the name
           - Add support for CPU topology
           - Add new option --highlight'ing threads, be it by name or, if a
             numeric value is provided, that run more than given duration
             (Stanislav Fomichev)
      
         - 'perf top':
           - Make 'perf top -g' refer to callchains, for consistency with
             other tools (David Ahern)
      
         - 'perf trace':
           - Handle old kernels where the "raw_syscalls" tracepoints were
             called plain "syscalls" (David Ahern)
           - Remove thread summary coloring, by Pekka Enberg.
           - Honour -m option in 'trace', the tool was offering the option to
             set the mmap size, but wasn't using it when doing the actual mmap
             on the events file descriptors (Jiri Olsa)
      
         - generic:
           - Backport libtraceevent plugin support (trace-cmd repository, with
             plugins for jbd2, hrtimer, kmem, kvm, mac80211, sched_switch,
             function, xen, scsi, cfg80211 (Jiri Olsa)
           - Print session information only if --stdio is given (Namhyung Kim)
      
        Tooling side changes, developer visible (plumbing):
      
         - Improve 'perf probe' exit path, release resources (Masami
           Hiramatsu)
         - Improve libtraceevent plugins exit path, allowing the registering
           of an unregister handler to be called at exit time (Namhyung Kim)
         - Add an alias to the build test makefile (make -C tools/perf
           build-test) (Namhyung Kim)
         - Get rid of die() and friends (good riddance!) in libtraceevent
           (Namhyung Kim)
         - Fix cross build problems related to pkgconfig and CROSS_COMPILE not
           being propagated to the feature tests, leading to features being
           tested in the host and then being enabled on the target (Mark
           Rutland)
         - Improve forked workload error reporting by sending the errno in the
           signal data queueing integer field, using sigqueue and by doing the
           signal setup in the evlist methods, removing open coded equivalents
           in various tools (Arnaldo Carvalho de Melo)
         - Do more auto exit cleanup chores in the 'evlist' destructor, so
           that the tools don't have to all do that sequence (Arnaldo Carvalho
           de Melo)
         - Pack 'struct perf_session_env' and 'struct trace' (Arnaldo Carvalho
           de Melo)
         - Add test for building detached source tarballs (Arnaldo Carvalho de
           Melo)
         - Move some header files (tools/perf/ to tools/include/ to make them
           available to other tools/ dwelling codebases (Namhyung Kim)
         - Move logic to warn about kptr_restrict'ed kernels to separate
           function in 'report' (Arnaldo Carvalho de Melo)
         - Move hist browser selection code to separate function (Arnaldo
           Carvalho de Melo)
         - Move histogram entries collapsing to separate function (Arnaldo
           Carvalho de Melo)
         - Introduce evlist__for_each() & friends (Arnaldo Carvalho de Melo)
         - Automate setup of FEATURE_CHECK_(C|LD)FLAGS-all variables (Jiri
           Olsa)
         - Move arch setup into seprate Makefile (Jiri Olsa)
         - Make libtraceevent install target quieter (Jiri Olsa)
         - Make tests/make output more compact (Jiri Olsa)
         - Ignore generated files in feature-checks (Chunwei Chen)
         - Introduce pevent_filter_strerror() in libtraceevent, similar in
           purpose to libc's strerror() function (Namhyung Kim)
         - Use perf_data_file methods to write output file in 'record' and
           'inject' (Jiri Olsa)
         - Use pr_*() functions where applicable in 'report' (Namhyumg Kim)
         - Add 'machine' 'addr_location' struct to have full picture (machine,
           thread, map, symbol, addr) for a (partially) resolved address,
           reducing function signatures (Arnaldo Carvalho de Melo)
         - Reduce code duplication in the histogram entry creation/insertion
           (Arnaldo Carvalho de Melo)
         - Auto allocate annotation histogram data structures (Arnaldo
           Carvalho de Melo)
         - No need to test against NULL before calling free, also set freed
           memory in struct pointers to NULL, to help fixing use after free
           bugs (Arnaldo Carvalho de Melo)
         - Rename some struct DSO binary_type related members and methods, to
           clarify its purpose and need for differentiation (symtab_type, ie
           one is about the files .text, CFI, etc, i.e.  its binary contents,
           and the other is about where the symbol table came from (Arnaldo
           Carvalho de Melo)
         - Convert to new topic libraries, starting with an API one (sysfs,
           debugfs, etc), renaming liblk in the process (Borislav Petkov)
         - Get rid of some more panic() like error handling in libtraceevent.
           (Namhyung Kim)
         - Get rid of panic() like calls in libtraceevent (Namyung Kim)
         - Start carving out symbol parsing routines (perf, just moving
           routines to topic files in tools/lib/symbol/, tools that want to
           use it need to integrate it directly, ie no
           tools/lib/symbol/Makefile is provided (Arnaldo Carvalho de Melo)
         - Assorted refactoring patches, moving code around and adding utility
           evlist methods that will be used in the IPT patchset (Adrian
           Hunter)
         - Assorted mmap_pages handling fixes (Adrian Hunter)
         - Several man pages typo fixes (Dongsheng Yang)
         - Get rid of several die() calls in libtraceevent (Namhyung Kim)
         - Use basename() in a more robust way, to avoid problems related to
           different system library implementations for that function
           (Stephane Eranian)
         - Remove open coded management of short_name_allocated member (Adrian
           Hunter)
         - Several cleanups in the "dso" methods, constifying some parameters
           and renaming some fields to clarify its purpose (Arnaldo Carvalho
           de Melo)
         - Add per-feature check flags, fixing libunwind related build
           problems on some architectures (Jean Pihet)
         - Do not disable source line lookup just because of one failure.
           (Adrian Hunter)
         - Several 'perf kvm' man page corrections (Dongsheng Yang)
         - Correct the message in feature-libnuma checking, swowing the right
           devel package names for various distros (Dongsheng Yang)
         - Polish 'readn()' function and introduce its counterpart,
           'writen()' (Jiri Olsa)
         - Start moving timechart state from global variables to a 'perf_tool'
           derived 'timechart' struct (Arnaldo Carvalho de Melo)
      
        ... and lots of fixes and improvements I forgot to list"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (282 commits)
        perf tools: Remove unnecessary callchain cursor state restore on unmatch
        perf callchain: Spare double comparison of callchain first entry
        perf tools: Do proper comm override error handling
        perf symbols: Export elf_section_by_name and reuse
        perf probe: Release all dynamically allocated parameters
        perf probe: Release allocated probe_trace_event if failed
        perf tools: Add 'build-test' make target
        tools lib traceevent: Unregister handler when xen plugin is unloaded
        tools lib traceevent: Unregister handler when scsi plugin is unloaded
        tools lib traceevent: Unregister handler when jbd2 plugin is is unloaded
        tools lib traceevent: Unregister handler when cfg80211 plugin is unloaded
        tools lib traceevent: Unregister handler when mac80211 plugin is unloaded
        tools lib traceevent: Unregister handler when sched_switch plugin is unloaded
        tools lib traceevent: Unregister handler when kvm plugin is unloaded
        tools lib traceevent: Unregister handler when kmem plugin is unloaded
        tools lib traceevent: Unregister handler when hrtimer plugin is unloaded
        tools lib traceevent: Unregister handler when function plugin is unloaded
        tools lib traceevent: Add pevent_unregister_print_function()
        tools lib traceevent: Add pevent_unregister_event_handler()
        tools lib traceevent: fix pointer-integer size mismatch
        ...
      9326657a
    • L
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2cc3f16c
      Linus Torvalds 提交于
      Pull IRQ changes from Ingo Molnar:
       "The only change in this cycle is a CPU hotplug related spurious
        warning fix"
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/irq: Fix kbuild warning in smp_irq_move_cleanup_interrupt()
        x86/irq: Fix do_IRQ() interrupt warning for cpu hotplug retriggered irqs
      2cc3f16c
    • L
      Merge branch 'core-stackprotector-for-linus' of... · ad3ab302
      Linus Torvalds 提交于
      Merge branch 'core-stackprotector-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull strong stackprotector support from Ingo Molnar:
       "This tree adds a CONFIG_CC_STACKPROTECTOR_STRONG=y, a new, stronger
        stack canary checking method supported by the newest GCC versions (4.9
        and later).
      
        Here's the 'intensity comparison' between the various protection
        modes:
      
            - defconfig
              11430641 kernel text size
              36110 function bodies
      
            - defconfig + CONFIG_CC_STACKPROTECTOR_REGULAR
              11468490 kernel text size (+0.33%)
              1015 of 36110 functions are stack-protected (2.81%)
      
            - defconfig + CONFIG_CC_STACKPROTECTOR_STRONG via this patch
              11692790 kernel text size (+2.24%)
              7401 of 36110 functions are stack-protected (20.5%)
      
        the strong model comes with non-trivial costs, which is why we
        preserved the 'regular' and 'none' models as well"
      
      * 'core-stackprotector-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        stackprotector: Introduce CONFIG_CC_STACKPROTECTOR_STRONG
        stackprotector: Unify the HAVE_CC_STACKPROTECTOR logic between architectures
      ad3ab302
    • L
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a693c46e
      Linus Torvalds 提交于
      Pull RCU updates from Ingo Molnar:
       - add RCU torture scripts/tooling
       - static analysis improvements
       - update RCU documentation
       - miscellaneous fixes
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (52 commits)
        rcu: Remove "extern" from function declarations in kernel/rcu/rcu.h
        rcu: Remove "extern" from function declarations in include/linux/*rcu*.h
        rcu/torture: Dynamically allocate SRCU output buffer to avoid overflow
        rcu: Don't activate RCU core on NO_HZ_FULL CPUs
        rcu: Warn on allegedly impossible rcu_read_unlock_special() from irq
        rcu: Add an RCU_INITIALIZER for global RCU-protected pointers
        rcu: Make rcu_assign_pointer's assignment volatile and type-safe
        bonding: Use RCU_INIT_POINTER() for better overhead and for sparse
        rcu: Add comment on evaluate-once properties of rcu_assign_pointer().
        rcu: Provide better diagnostics for blocking in RCU callback functions
        rcu: Improve SRCU's grace-period comments
        rcu: Fix CONFIG_RCU_FANOUT_EXACT for odd fanout/leaf values
        rcu: Fix coccinelle warnings
        rcutorture: Stop tracking FSF's postal address
        rcutorture: Move checkarg to functions.sh
        rcutorture: Flag errors and warnings with color coding
        rcutorture: Record results from repeated runs of the same test scenario
        rcutorture: Test summary at end of run with less chattiness
        rcutorture: Update comment in kvm.sh listing typical RCU trace events
        rcutorture: Add tracing-enabled version of TREE08
        ...
      a693c46e
    • L
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6ffbe7d1
      Linus Torvalds 提交于
      Pull core locking changes from Ingo Molnar:
       - futex performance increases: larger hashes, smarter wakeups
       - mutex debugging improvements
       - lots of SMP ordering documentation updates
       - introduce the smp_load_acquire(), smp_store_release() primitives.
         (There are WIP patches that make use of them - not yet merged)
       - lockdep micro-optimizations
       - lockdep improvement: better cover IRQ contexts
       - liblockdep at last. We'll continue to monitor how useful this is
      
      * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
        futexes: Fix futex_hashsize initialization
        arch: Re-sort some Kbuild files to hopefully help avoid some conflicts
        futexes: Avoid taking the hb->lock if there's nothing to wake up
        futexes: Document multiprocessor ordering guarantees
        futexes: Increase hash table size for better performance
        futexes: Clean up various details
        arch: Introduce smp_load_acquire(), smp_store_release()
        arch: Clean up asm/barrier.h implementations using asm-generic/barrier.h
        arch: Move smp_mb__{before,after}_atomic_{inc,dec}.h into asm/atomic.h
        locking/doc: Rename LOCK/UNLOCK to ACQUIRE/RELEASE
        mutexes: Give more informative mutex warning in the !lock->owner case
        powerpc: Full barrier for smp_mb__after_unlock_lock()
        rcu: Apply smp_mb__after_unlock_lock() to preserve grace periods
        Documentation/memory-barriers.txt: Downgrade UNLOCK+BLOCK
        locking: Add an smp_mb__after_unlock_lock() for UNLOCK+BLOCK barrier
        Documentation/memory-barriers.txt: Document ACCESS_ONCE()
        Documentation/memory-barriers.txt: Prohibit speculative writes
        Documentation/memory-barriers.txt: Add long atomic examples to memory-barriers.txt
        Documentation/memory-barriers.txt: Add needed ACCESS_ONCE() calls to memory-barriers.txt
        Revert "smp/cpumask: Make CONFIG_CPUMASK_OFFSTACK=y usable without debug dependency"
        ...
      6ffbe7d1
    • L
      Merge branch 'core-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 897aea30
      Linus Torvalds 提交于
      Pull core debug changes from Ingo Molnar:
       "Currently there are two methods to set the panic_timeout: via
        'panic=X' boot commandline option, or via /proc/sys/kernel/panic.
      
        This tree adds a third panic_timeout configuration method:
        configuration via Kconfig, via CONFIG_PANIC_TIMEOUT=X - useful to
        distros that generally want their kernel defaults to come with the
        .config.
      
        CONFIG_PANIC_TIMEOUT defaults to 0, which was the previous default
        value of panic_timeout.
      
        Doing that unearthed a few arch trickeries regarding arch-special
        panic_timeout values and related complications - hopefully all
        resolved to the satisfaction of everyone"
      
      * 'core-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        powerpc: Clean up panic_timeout usage
        MIPS: Remove panic_timeout settings
        panic: Make panic_timeout configurable
      897aea30
    • L
      Merge tag 'ktest-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · 9451ee2d
      Linus Torvalds 提交于
      Pull ktest updates from Steven Rostedt:
       "Here's some basic updates to ktest.pl.  They include:
      
         - add config to modify the signal to terminate console
         - update to documentation (missing some config options)
         - add KERNEL_VERSION variable to use for other configs
         - add '=~' to let configs eval other configs
         - add BISECT_TRIES to run multiple tests per git bisect good"
      
      * tag 'ktest-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
        ktest: Add BISECT_TRIES to bisect test
        ktest: Add eval '=~' command to modify variables in config file
        ktest: Add special variable ${KERNEL_VERSION}
        ktest: Add documentation of CLOSE_CONSOLE_SIGNAL
        ktest: Make the signal to terminate the console configurable
      9451ee2d
    • L
      Merge tag 'localmodconfig-v3.14' of... · edde1fb8
      Linus Torvalds 提交于
      Merge tag 'localmodconfig-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig
      
      Pull localmodconfig update from Steven Rostedt:
       "While debugging the problem with localmodconfig and the ALSA codec
        modules all being set, I discovered a small bug in the dependency
        logic.
      
        If a config has a dependency based on its setting value,
        localmodcondig misses it.
      
        For example:
      
          config FOO
              default y if BAR || ZOO
      
        If FOO is needed for a module and is set to '=m', and so are BAR or
        ZOO, localmodconfig will not see that BAR or ZOO are also needed for
        the foo module, and will incorrectly disable them"
      
      * tag 'localmodconfig-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig:
        localmodconfig: Add config depends by default settings
      edde1fb8
    • L
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 561a60f0
      Linus Torvalds 提交于
      Pull hwmon updates from Guenter Roeck:
       "Add support for Kaveri CPUs to k10temp driver.  Add support for S12x0
        to coretemp driver.
      
        Cleanup and minor fixes in several drivers.  Notable are 'Do not
        return -EAGAIN for low temperatures' to coretemp and 'Re-enable
        logical device mapping for NCT6791 during resume' to nct6775.  Both
        will be sent to -stable, but only after some time in mainline"
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (k10temp) Add support for Kaveri CPUs
        hwmon: (sht15) add include guard
        hwmon: (max197) add include guard
        hwmon: (nct6775) Re-enable logical device mapping for NCT6791 during resume
        hwmon: (s3c) Trivial cleanup in hwmon-s3c.h
        hwmon: (coretemp) Do not return -EAGAIN for low temperatures
        hwmon: (da9052) Fix adc to voltage calculation
        hwmon: (coretemp) Refine TjMax detection
        hwmon: (coretemp) Add PCI device ID for CE41x0 CPUs
        hwmon: (coretemp) Use PCI host bridge ID to identify CPU if necessary
        hwmon: remove DEFINE_PCI_DEVICE_TABLE macro
      561a60f0
    • L
      Merge tag 'please-pull-rm_xen' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · db4fcb45
      Linus Torvalds 提交于
      Pull ia64 Xen removal from Tony Luck:
       "Nobody has been maintaining xen in ia64 for a long time.  Rip it all
        out so people do not waste time making updates to broken/dead code"
      
      * tag 'please-pull-rm_xen' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        ia64/xen: Remove Xen support for ia64
      db4fcb45
    • L
      Merge tag 'edac_for_3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 09854dde
      Linus Torvalds 提交于
      Pull EDAC updates from Borislav Petkov:
       - mpc85xx PCIe error interrupt support
       - misc small enhancements/fixes all over the place.
      
      * tag 'edac_for_3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC: Don't try to cancel workqueue when it's never setup
        e752x_edac: Fix pci_dev usage count
        sb_edac: Mark get_mci_for_node_id as static
        EDAC: Mark edac_create_debug_nodes as static
        amd64_edac: Remove "amd64" prefix from static functions
        amd64_edac: Simplify code around decode_bus_error
        amd64_edac: Mark amd64_decode_bus_error as static
        EDAC: Remove DEFINE_PCI_DEVICE_TABLE macro
        amd64_edac: Fix condition to verify max channels allowed for F15 M30h
        edac/85xx: Add PCIe error interrupt edac support
      09854dde
    • L
      Merge tag 'metag-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag · a1a3b3ef
      Linus Torvalds 提交于
      Pull Metag architecture changes from James Hogan:
       - A few cleanups and minor bug fixes.
       - Kill SMP single function call IPI.
      
      * tag 'metag-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag:
        metag/smp: Make boot_secondary() static
        metag: topology: export 'cpu_core_map'
        smp, metag: kill SMP single function call interrupt
        metag: smp: don't set irq regs in do_IPI()
        metag: dma: remove dead code in dma_alloc_init()
      a1a3b3ef
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 8cf7a16e
      Linus Torvalds 提交于
      Pull m68k updates from Geert Uytterhoeven:
       - Zorro bus cleanups and UAPI revival
       - Bootinfo cleanups and UAPI revival
       - Kexec support
       - Memory size reductions and bug fixes for multi-platform kernels
       - Polled interrupt support for Atari EtherNAT, EtherNEC and NetUSBee
       - Machine-specific random_get_entropy()
       - Defconfig updates and cleanups
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (46 commits)
        m68k/mac: Make SCC reset work more reliably
        m68k/irq - Use polled IRQ flag for MFP timer cascaded interrupts
        m68k: Update defconfigs for v3.13-rc1
        m68k/defconfig: Enable EARLY_PRINTK
        m68k/mm: kmap spelling/grammar fixes
        m68k: Convert arch/m68k/kernel/traps.c to pr_*()
        m68k: Convert arch/m68k/mm/fault.c to pr_*()
        m68k/mm: Check for mm != NULL in do_page_fault() debug code
        m68k/defconfig: Disable /sbin/hotplug fork-bomb by default
        m68k/atari: Hide RTC_PORT() macro from rtc-cmos
        m68k/amiga,atari: Fix specifying multiple debug= parameters
        m68k/defconfig: Use ext4 for ext2/ext3 file systems
        m68k: Add support to export bootinfo in procfs
        m68k: Add kexec support
        m68k/mac: Mark Mac IIsi ADB driver BROKEN
        m68k/amiga: Provide mach_random_get_entropy()
        m68k: Add infrastructure for machine-specific random_get_entropy()
        m68k/atari: Call paging_init() before nf_init()
        m68k: Remove superfluous inclusions of <asm/bootinfo.h>
        m68k/UAPI: Use proper types (endianness/size) in <asm/bootinfo*.h>
        ...
      8cf7a16e
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · f479c01c
      Linus Torvalds 提交于
      Pull s390 updates from Martin Schwidefsky:
       "The bulk of the s390 updates for v3.14.
      
        New features are the perf support for the CPU-Measurement Sample
        Facility and the EP11 support for the crypto cards.  And the normal
        cleanups and bug-fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (44 commits)
        s390/cpum_sf: fix printk format warnings
        s390: Fix misspellings using 'codespell' tool
        s390/qdio: bridgeport support - CHSC part
        s390: delete new instances of __cpuinit usage
        s390/compat: fix PSW32_USER_BITS definition
        s390/zcrypt: add support for EP11 coprocessor cards
        s390/mm: optimize randomize_et_dyn for !PF_RANDOMIZE
        s390: use IS_ENABLED to check if a CONFIG is set to y or m
        s390/cio: use device_lock to synchronize calls to the ccwgroup driver
        s390/cio: use device_lock to synchronize calls to the ccw driver
        s390/cio: fix unlocked access of online member
        s390/cpum_sf: Add flag to process full SDBs only
        s390/cpum_sf: Add raw data sampling to support the diagnostic-sampling function
        s390/cpum_sf: Filter perf events based event->attr.exclude_* settings
        s390/cpum_sf: Detect KVM guest samples
        s390/cpum_sf: Add helper to read TOD from trailer entries
        s390/cpum_sf: Atomically reset trailer entry fields of sample-data-blocks
        s390/cpum_sf: Dynamically extend the sampling buffer if overflows occur
        s390/pci: reenable per default
        s390/pci/dma: fix accounting of allocated_pages
        ...
      f479c01c
  2. 20 1月, 2014 4 次提交
  3. 19 1月, 2014 4 次提交
  4. 18 1月, 2014 7 次提交
    • R
      Revert "ACPI: Add BayTrail SoC GPIO and LPSS ACPI IDs" · 2b844ba7
      Rafael J. Wysocki 提交于
      This reverts commit f6308b36 (ACPI: Add BayTrail SoC GPIO and LPSS
      ACPI IDs), because it causes the Alan Cox' ASUS T100TA to "crash and
      burn" during boot if the Baytrail pinctrl driver is compiled in.
      
      Fixes: f6308b36 (ACPI: Add BayTrail SoC GPIO and LPSS ACPI IDs)
      Reported-by: NOne Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk>
      Requested-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      2b844ba7
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 7d0d46da
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) The value choosen for the new SO_MAX_PACING_RATE socket option on
          parisc was very poorly choosen, let's fix it while we still can.
          From Eric Dumazet.
      
       2) Our generic reciprocal divide was found to handle some edge cases
          incorrectly, part of this is encoded into the BPF as deep as the JIT
          engines themselves.  Just use a real divide throughout for now.
          From Eric Dumazet.
      
       3) Because the initial lookup is lockless, the TCP metrics engine can
          end up creating two entries for the same lookup key.  Fix this by
          doing a second lookup under the lock before we actually create the
          new entry.  From Christoph Paasch.
      
       4) Fix scatter-gather list init in usbnet driver, from Bjørn Mork.
      
       5) Fix unintended 32-bit truncation in cxgb4 driver's bit shifting.
          From Dan Carpenter.
      
       6) Netlink socket dumping uses the wrong socket state for timewait
          sockets.  Fix from Neal Cardwell.
      
       7) Fix netlink memory leak in ieee802154_add_iface(), from Christian
          Engelmayer.
      
       8) Multicast forwarding in ipv4 can overflow the per-rule reference
          counts, causing all multicast traffic to cease.  Fix from Hannes
          Frederic Sowa.
      
       9) via-rhine needs to stop all TX queues when it resets the device,
          from Richard Weinberger.
      
      10) Fix RDS per-cpu accesses broken by the this_cpu_* conversions.  From
          Gerald Schaefer.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        s390/bpf,jit: fix 32 bit divisions, use unsigned divide instructions
        parisc: fix SO_MAX_PACING_RATE typo
        ipv6: simplify detection of first operational link-local address on interface
        tcp: metrics: Avoid duplicate entries with the same destination-IP
        net: rds: fix per-cpu helper usage
        e1000e: Fix compilation warning when !CONFIG_PM_SLEEP
        bpf: do not use reciprocal divide
        be2net: add dma_mapping_error() check for dma_map_page()
        bnx2x: Don't release PCI bars on shutdown
        net,via-rhine: Fix tx_timeout handling
        batman-adv: fix batman-adv header overhead calculation
        qlge: Fix vlan netdev features.
        net: avoid reference counter overflows on fib_rules in multicast forwarding
        dm9601: add USB IDs for new dm96xx variants
        MAINTAINERS: add virtio-dev ML for virtio
        ieee802154: Fix memory leak in ieee802154_add_iface()
        net: usbnet: fix SG initialisation
        inet_diag: fix inet_diag_dump_icsk() to use correct state for timewait sockets
        cxgb4: silence shift wrapping static checker warning
      7d0d46da
    • H
      s390/bpf,jit: fix 32 bit divisions, use unsigned divide instructions · 3af57f78
      Heiko Carstens 提交于
      The s390 bpf jit compiler emits the signed divide instructions "dr" and "d"
      for unsigned divisions.
      This can cause problems: the dividend will be zero extended to a 64 bit value
      and the divisor is the 32 bit signed value as specified A or X accumulator,
      even though A and X are supposed to be treated as unsigned values.
      
      The divide instrunctions will generate an exception if the result cannot be
      expressed with a 32 bit signed value.
      This is the case if e.g. the dividend is 0xffffffff and the divisor either 1
      or also 0xffffffff (signed: -1).
      
      To avoid all these issues simply use unsigned divide instructions.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3af57f78
    • E
      parisc: fix SO_MAX_PACING_RATE typo · 75b99dbd
      Eric Dumazet 提交于
      SO_MAX_PACING_RATE definition on parisc got a typo.
      Its not too late to fix it, before 3.13 is official.
      
      Fixes: 62748f32 ("net: introduce SO_MAX_PACING_RATE")
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      75b99dbd
    • H
      ipv6: simplify detection of first operational link-local address on interface · 11ffff75
      Hannes Frederic Sowa 提交于
      In commit 1ec047eb ("ipv6: introduce per-interface counter for
      dad-completed ipv6 addresses") I build the detection of the first
      operational link-local address much to complex. Additionally this code
      now has a race condition.
      
      Replace it with a much simpler variant, which just scans the address
      list when duplicate address detection completes, to check if this is
      the first valid link local address and send RS and MLD reports then.
      
      Fixes: 1ec047eb ("ipv6: introduce per-interface counter for dad-completed ipv6 addresses")
      Reported-by: NJiri Pirko <jiri@resnulli.us>
      Cc: Flavio Leitner <fbl@redhat.com>
      Signed-off-by: NHannes Frederic Sowa <hannes@stressinduktion.org>
      Acked-by: NFlavio Leitner <fbl@redhat.com>
      Acked-by: NJiri Pirko <jiri@resnulli.us>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      11ffff75
    • C
      tcp: metrics: Avoid duplicate entries with the same destination-IP · 77f99ad1
      Christoph Paasch 提交于
      Because the tcp-metrics is an RCU-list, it may be that two
      soft-interrupts are inside __tcp_get_metrics() for the same
      destination-IP at the same time. If this destination-IP is not yet part of
      the tcp-metrics, both soft-interrupts will end up in tcpm_new and create
      a new entry for this IP.
      So, we will have two tcp-metrics with the same destination-IP in the list.
      
      This patch checks twice __tcp_get_metrics(). First without holding the
      lock, then while holding the lock. The second one is there to confirm
      that the entry has not been added by another soft-irq while waiting for
      the spin-lock.
      
      Fixes: 51c5d0c4 (tcp: Maintain dynamic metrics in local cache.)
      Signed-off-by: NChristoph Paasch <christoph.paasch@uclouvain.be>
      Reviewed-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      77f99ad1
    • G
      net: rds: fix per-cpu helper usage · c196403b
      Gerald Schaefer 提交于
      commit ae4b46e9 "net: rds: use this_cpu_* per-cpu helper" broke per-cpu
      handling for rds. chpfirst is the result of __this_cpu_read(), so it is
      an absolute pointer and not __percpu. Therefore, __this_cpu_write()
      should not operate on chpfirst, but rather on cache->percpu->first, just
      like __this_cpu_read() did before.
      
      Cc: <stable@vger.kernel.org> # 3.8+
      Signed-off-byd Gerald Schaefer <gerald.schaefer@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c196403b