1. 11 Sep, 2013 2 commits
    • Arnaldo Carvalho de Melo's avatar
      perf: Fix up MMAP2 buffer space reservation · d008d525
      Arnaldo Carvalho de Melo authored
      The ino_generation field was added in the PERF_RECORD_MMAP2 record in
      the 13d7a241 cset but no space for it was allocated, corrupting the
      PERF_FORMAT_{TIME,CPU,TID,etc} area (sample_type/sample_id_all), fix it.
      
      Detected with one of the regression tests done by 'perf test':
      
        [root@sandy ~]# perf test -v 7
         7: Validate PERF_RECORD_* events & perf_sample fields     :
        --- start ---
        61315294449606 0 PERF_RECORD_SAMPLE
        61315294453161 0 PERF_RECORD_SAMPLE
        61315294454441 0 PERF_RECORD_SAMPLE
        61315294455709 0 PERF_RECORD_SAMPLE
        61315295600899 0 PERF_RECORD_COMM: sleep:6500
        27917287430500 342521613 PERF_RECORD_MMAP2 6500/6500: [0x400000(0x7000) @ 0 00:1d 311442 9016]: /usr/bin/sleep
        MMAP2 going backwards in time, prev=61315295600899, curr=27917287430500
        MMAP2 with unexpected cpu, expected 0, got 342521613
        MMAP2 with unexpected pid, expected 6500, got 1701606191
        MMAP2 with unexpected tid, expected 6500, got 28773
        27917287430500 342561333 PERF_RECORD_MMAP2 6500/6500: [0x3b7e000000(0x223000) @ 0 00:1d 309186 9016]: /usr/lib64/ld-2.16.so
        MMAP2 with unexpected cpu, expected 0, got 342561333
        MMAP2 with unexpected pid, expected 6500, got 1932408369
        MMAP2 with unexpected tid, expected 6500, got 111
        27917287430500 342600095 PERF_RECORD_MMAP2 6500/6500: [0x7fffbd7dc000(0x1000) @ 0x7fffbd7dc000 00:00 0 0]: [vdso]
        MMAP2 with unexpected cpu, expected 0, got 342600095
        MMAP2 with unexpected pid, expected 6500, got 1935963739
        MMAP2 with unexpected tid, expected 6500, got 23919
        27917287430500 342882834 PERF_RECORD_MMAP2 6500/6500: [0x3b7e400000(0x3b8000) @ 0 00:1d 309187 9016]: /usr/lib64/libc-2.16.so
        MMAP2 with unexpected cpu, expected 0, got 342882834
        MMAP2 with unexpected pid, expected 6500, got 909192754
        MMAP2 with unexpected tid, expected 6500, got 7303982
        61316297195411 0 PERF_RECORD_EXIT(6500:6500):(6500:6500)
        ---- end ----
        Validate PERF_RECORD_* events & perf_sample fields: FAILED!
        [root@sandy ~]#
      
      After this patch:
      
        [root@sandy ~]# perf test 7
         7: Validate PERF_RECORD_* events & perf_sample fields     : Ok
        [root@sandy ~]#
      Acked-by: default avatarPeter Zijlstra <peterz@infradead.org>
      Acked-by: default avatarStephane Eranian <eranian@google.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-heeuv986b8ha7whqg4o3he7c@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      d008d525
    • Stephane Eranian's avatar
      perf tools: Add attr->mmap2 support · 5c5e854b
      Stephane Eranian authored
      This patch adds support for the new PERF_RECORD_MMAP2 record type
      exposed by the kernel. This is an extended PERF_RECORD_MMAP record.
      
      It adds for each file-backed mapping the device major, minor number and
      the inode number and generation.
      
      This triplet uniquely identifies the source of a file-backed mapping. It
      can be used to detect identical virtual mappings between processes, for
      instance.
      
      The patch will prefer MMAP2 over MMAP.
      Signed-off-by: default avatarStephane Eranian <eranian@google.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1377079825-19057-3-git-send-email-eranian@google.com
      [ Cope with 314add6b "Change machine__findnew_thread() to set thread pid",
        fix 'perf test' regression test entry affected,
        use perf_missing_features.mmap2 to fallback to not using .mmap2 in older kernels,
        so that new tools can work with kernels where this feature is not present ]
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5c5e854b
  2. 09 Sep, 2013 3 commits
  3. 06 Sep, 2013 1 commit
    • Ingo Molnar's avatar
      Merge tag 'perf-urgent-for-mingo' of... · 72f4a11d
      Ingo Molnar authored
      Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent
      
      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:
      
       * Fix parsing with no sample_id_all bit set, this regression prevents perf
         from reading old perf.data files generated in systems where
         perf_event_attr.sample_id_all isn't available, from Adrian Hunter.
      
       * Add signal checking to the inner 'perf trace' event processing loop, allowing
         faster response to control+C.
      
       * Fix formatting of long symbol names removing the hardcoding of a buffer
         size used to format histogram entries, which was truncating the lines.
      
       * Separate progress bar update when processing events, reducing potentially big
         overhead in not needed TUI progress bar screen updates, from Jiri Olsa.
      
       * Fix 'perf trace' build in architectures where MAP_32BIT is not defined, from
         Kyle McMartin.
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      72f4a11d
  4. 05 Sep, 2013 6 commits
  5. 04 Sep, 2013 25 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-spinlocks-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 816434ec
      Linus Torvalds authored
      Pull x86 spinlock changes from Ingo Molnar:
       "The biggest change here are paravirtualized ticket spinlocks (PV
        spinlocks), which bring a nice speedup on various benchmarks.
      
        The KVM host side will come to you via the KVM tree"
      
      * 'x86-spinlocks-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kvm/guest: Fix sparse warning: "symbol 'klock_waiting' was not declared as static"
        kvm: Paravirtual ticketlocks support for linux guests running on KVM hypervisor
        kvm guest: Add configuration support to enable debug information for KVM Guests
        kvm uapi: Add KICK_CPU and PV_UNHALT definition to uapi
        xen, pvticketlock: Allow interrupts to be enabled while blocking
        x86, ticketlock: Add slowpath logic
        jump_label: Split jumplabel ratelimit
        x86, pvticketlock: When paravirtualizing ticket locks, increment by 2
        x86, pvticketlock: Use callee-save for lock_spinning
        xen, pvticketlocks: Add xen_nopvspin parameter to disable xen pv ticketlocks
        xen, pvticketlock: Xen implementation for PV ticket locks
        xen: Defer spinlock setup until boot CPU setup
        x86, ticketlock: Collapse a layer of functions
        x86, ticketlock: Don't inline _spin_unlock when using paravirt spinlocks
        x86, spinlock: Replace pv spinlocks with pv ticketlocks
      816434ec
    • Linus Torvalds's avatar
      Merge branch 'x86-smap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f357a820
      Linus Torvalds authored
      Pull x86 SMAP fixes from Ingo Molnar:
       "Fixes for Intel SMAP support, to fix SIGSEGVs during bootup"
      
      * 'x86-smap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        Introduce [compat_]save_altstack_ex() to unbreak x86 SMAP
        x86, smap: Handle csum_partial_copy_*_user()
      f357a820
    • Linus Torvalds's avatar
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b20c99eb
      Linus Torvalds authored
      Pull x86 RAS changes from Ingo Molnar:
       "[ The reason for drivers/ updates is that Boris asked for the
          drivers/edac/ changes to go via x86/ras in this cycle ]
      
        Main changes:
      
         - AMD CPUs:
            . Add ECC event decoding support for new F15h models
            . Various erratum fixes
            . Fix single-channel on dual-channel-controllers bug.
      
         - Intel CPUs:
            . UC uncorrectable memory error parsing fix
            . Add support for CMC (Corrected Machine Check) 'FF' (Firmware
              First) flag in the APEI HEST
      
         - Various cleanups and fixes"
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        amd64_edac: Fix incorrect wraparounds
        amd64_edac: Correct erratum 505 range
        cpc925_edac: Use proper array termination
        x86/mce, acpi/apei: Only disable banks listed in HEST if mce is configured
        amd64_edac: Get rid of boot_cpu_data accesses
        amd64_edac: Add ECC decoding support for newer F15h models
        x86, amd_nb: Clarify F15h, model 30h GART and L3 support
        pci_ids: Add PCI device ID functions 3 and 4 for newer F15h models.
        x38_edac: Make a local function static
        i3200_edac: Make a local function static
        x86/mce: Pay no attention to 'F' bit in MCACOD when parsing 'UC' errors
        APEI/ERST: Fix error message formatting
        amd64_edac: Fix single-channel setups
        EDAC: Replace strict_strtol() with kstrtol()
        mce: acpi/apei: Soft-offline a page on firmware GHES notification
        mce: acpi/apei: Add a boot option to disable ff mode for corrected errors
        mce: acpi/apei: Honour Firmware First for MCA banks listed in APEI HEST CMC
      b20c99eb
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · bb8c4701
      Linus Torvalds authored
      Pull x86 platform documentation fix from Ingo Molnar.
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/acpi: Correct out-of-date comment of __acpi_map_table()
      bb8c4701
    • Linus Torvalds's avatar
      Merge branch 'x86-paravirt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 05eebfb2
      Linus Torvalds authored
      Pull x86 paravirt changes from Ingo Molnar:
       "Hypervisor signature detection cleanup and fixes - the goal is to make
        KVM guests run better on MS/Hyperv and to generalize and factor out
        the code a bit"
      
      * 'x86-paravirt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Correctly detect hypervisor
        x86, kvm: Switch to use hypervisor_cpuid_base()
        xen: Switch to use hypervisor_cpuid_base()
        x86: Introduce hypervisor_cpuid_base()
      05eebfb2
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cb3e4330
      Linus Torvalds authored
      Pull x86 mm changes from Ingo Molnar:
       "Misc smaller fixes:
      
         - a parse_setup_data() boot crash fix
      
         - a memblock and an __early_ioremap cleanup
      
         - turn the always-on CONFIG_ARCH_MEMORY_PROBE=y into a configurable
           option and turn it off - it's an unrobust debug facility, it
           shouldn't be enabled by default"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: avoid remapping data in parse_setup_data()
        x86: Use memblock_set_current_limit() to set limit for memblock.
        mm: Remove unused variable idx0 in __early_ioremap()
        mm/hotplug, x86: Disable ARCH_MEMORY_PROBE by default
      cb3e4330
    • Linus Torvalds's avatar
      Merge branch 'x86-kaslr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · aafcd5d7
      Linus Torvalds authored
      Pull x86 relocation changes from Ingo Molnar:
       "This tree contains a single change, ELF relocation handling in C - one
        of the kernel randomization patches that makes sense even without
        randomization present upstream"
      
      * 'x86-kaslr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, relocs: Move ELF relocation handling to C
      aafcd5d7
    • Linus Torvalds's avatar
      Merge branch 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6832d965
      Linus Torvalds authored
      Pull timers/nohz changes from Ingo Molnar:
       "It mostly contains fixes and full dynticks off-case optimizations, by
        Frederic Weisbecker"
      
      * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
        nohz: Include local CPU in full dynticks global kick
        nohz: Optimize full dynticks's sched hooks with static keys
        nohz: Optimize full dynticks state checks with static keys
        nohz: Rename a few state variables
        vtime: Always debug check snapshot source _before_ updating it
        vtime: Always scale generic vtime accounting results
        vtime: Optimize full dynticks accounting off case with static keys
        vtime: Describe overriden functions in dedicated arch headers
        m68k: hardirq_count() only need preempt_mask.h
        hardirq: Split preempt count mask definitions
        context_tracking: Split low level state headers
        vtime: Fix racy cputime delta update
        vtime: Remove a few unneeded generic vtime state checks
        context_tracking: User/kernel broundary cross trace events
        context_tracking: Optimize context switch off case with static keys
        context_tracking: Optimize guest APIs off case with static key
        context_tracking: Optimize main APIs off case with static key
        context_tracking: Ground setup for static key use
        context_tracking: Remove full dynticks' hacky dependency on wide context tracking
        nohz: Only enable context tracking on full dynticks CPUs
        ...
      6832d965
    • Linus Torvalds's avatar
      Merge branch 'x86-fb-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 228abe73
      Linus Torvalds authored
      Pull x86 fb changes from Ingo Molnar:
       "This tree includes preparatory patches for SimpleDRM driver support,
        by David Herrmann.  They clean up x86 framebuffer support by creating
        simplefb devices wherever possible.  More background can be found at
      
           http://lwn.net/Articles/558104/"
      
      * 'x86-fb-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        fbdev: fbcon: select VT_HW_CONSOLE_BINDING
        fbdev: efifb: bind to efi-framebuffer
        fbdev: vesafb: bind to platform-framebuffer device
        fbdev: simplefb: add common x86 RGB formats
        x86: sysfb: move EFI quirks from efifb to sysfb
        x86: provide platform-devices for boot-framebuffers
        fbdev: simplefb: mark as fw and allocate apertures
        fbdev: simplefb: add init through platform_data
      228abe73
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1f9c52e1
      Linus Torvalds authored
      Pull x86 cpu feature fixes from Ingo Molnar:
       "Two small cpufeature support updates"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Fix override new_cpu_data.x86 with 486
        x86, cpufeature: Use new CC_HAVE_ASM_GOTO
      1f9c52e1
    • Linus Torvalds's avatar
      Merge branches 'x86-boot-for-linus' and 'x86-cleanups-for-linus' of... · 9cb87aaf
      Linus Torvalds authored
      Merge branches 'x86-boot-for-linus' and 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull tiny x86 boot cleanups from Ingo Molnar.
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Fix a sanity check in printf.c
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, boot: Fix warning due to undeclared strlen()
      9cb87aaf
    • Linus Torvalds's avatar
      Merge branch 'x86-asmlinkage-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2a475501
      Linus Torvalds authored
      Pull x86/asmlinkage changes from Ingo Molnar:
       "As a preparation for Andi Kleen's LTO patchset (link time
        optimizations using GCC's -flto which build time optimization has
        steadily increased in quality over the past few years and might
        eventually be usable for the kernel too) this tree includes a handful
        of preparatory patches that make function calling convention
        annotations consistent again:
      
         - Mark every function without arguments (or 64bit only) that is used
           by assembly code with asmlinkage()
      
         - Mark every function with parameters or variables that is used by
           assembly code as __visible.
      
        For the vanilla kernel this has documentation, consistency and
        debuggability advantages, for the time being"
      
      * 'x86-asmlinkage-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/asmlinkage: Fix warning in xen asmlinkage change
        x86, asmlinkage, vdso: Mark vdso variables __visible
        x86, asmlinkage, power: Make various symbols used by the suspend asm code visible
        x86, asmlinkage: Make dump_stack visible
        x86, asmlinkage: Make 64bit checksum functions visible
        x86, asmlinkage, paravirt: Add __visible/asmlinkage to xen paravirt ops
        x86, asmlinkage, apm: Make APM data structure used from assembler visible
        x86, asmlinkage: Make syscall tables visible
        x86, asmlinkage: Make several variables used from assembler/linker script visible
        x86, asmlinkage: Make kprobes code visible and fix assembler code
        x86, asmlinkage: Make various syscalls asmlinkage
        x86, asmlinkage: Make 32bit/64bit __switch_to visible
        x86, asmlinkage: Make _*_start_kernel visible
        x86, asmlinkage: Make all interrupt handlers asmlinkage / __visible
        x86, asmlinkage: Change dotraplinkage into __visible on 32bit
        x86: Fix sys_call_table type in asm/syscall.h
      2a475501
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3d7e5fc3
      Linus Torvalds authored
      Pull x86/asm changes from Ingo Molnar:
       "Main changes:
      
         - Apply low level mutex optimization on x86-64, by Wedson Almeida
           Filho.
      
         - Change bitops to be naturally 'long', by H Peter Anvin.
      
         - Add TSX-NI opcodes support to the x86 (instrumentation) decoder, by
           Masami Hiramatsu.
      
         - Add clang compatibility adjustments/workarounds, by Jan-Simon
           Möller"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, doc: Update uaccess.h comment to reflect clang changes
        x86, asm: Fix a compilation issue with clang
        x86, asm: Extend definitions of _ASM_* with a raw format
        x86, insn: Add new opcodes as of June, 2013
        x86/ia32/asm: Remove unused argument in macro
        x86, bitops: Change bitops to be native operand size
        x86: Use asm-goto to implement mutex fast path on x86-64
      3d7e5fc3
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6924a467
      Linus Torvalds authored
      Pull x86/apic changes from Ingo Molnar:
       "Smaller fixes"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ioapic: Check attr against the previous setting when programmed more than once
        x86/ioapic/kcrash: Prevent crash_kexec() from deadlocking on ioapic_lock
        x86/acpi: Fix incorrect sanity check in acpi_register_lapic()
      6924a467
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ac3c1c4f
      Linus Torvalds authored
      Pull timer changes from Ingo Molnar:
       "Various clocksource driver updates: extend the core with memory mapped
        hardware (mmio) support and add new (ARM) Moxart SoC and sun4i
        hardware support"
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
        clocksource: arch_timer: Add support for memory mapped timers
        clocksource: arch_timer: Push the read/write wrappers deeper
        Documentation: Add memory mapped ARM architected timer binding
        clocksource: arch_timer: Pass clock event to set_mode callback
        clocksource: arch_timer: Make register accessors less error-prone
        ARM: clocksource: moxart: documentation: Update device tree bindings document
        ARM: clocksource: moxart: Add bitops.h include
        ARM: clocksource: moxart: documentation: Fix device tree bindings document
        ARM: clocksource: Add support for MOXA ART SoCs
        clocksource: cadence_ttc: Reuse clocksource as sched_clock
        clocksource: cadence_ttc: Remove unused header
        clocksource: sun4i: Fix bug when switching from periodic to oneshot modes
        clocksource: sun4i: Cleanup parent clock setup
        clocksource: sun4i: Remove TIMER_SCAL variable
        clocksource: sun4i: Factor out some timer code
        clocksource: sun4i: Fix the next event code
        clocksource: sun4i: Don't forget to enable the clock we use
        clocksource: sun4i: Add clocksource and sched clock drivers
        clocksource: sun4i: rename AUTORELOAD define to RELOAD
        clocksource: sun4i: Wrap macros arguments in parenthesis
        ...
      ac3c1c4f
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5e0b3a4e
      Linus Torvalds authored
      Pull scheduler changes from Ingo Molnar:
       "Various optimizations, cleanups and smaller fixes - no major changes
        in scheduler behavior"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/fair: Fix the sd_parent_degenerate() code
        sched/fair: Rework and comment the group_imb code
        sched/fair: Optimize find_busiest_queue()
        sched/fair: Make group power more consistent
        sched/fair: Remove duplicate load_per_task computations
        sched/fair: Shrink sg_lb_stats and play memset games
        sched: Clean-up struct sd_lb_stat
        sched: Factor out code to should_we_balance()
        sched: Remove one division operation in find_busiest_queue()
        sched/cputime: Use this_cpu_add() in task_group_account_field()
        cpumask: Fix cpumask leak in partition_sched_domains()
        sched/x86: Optimize switch_mm() for multi-threaded workloads
        generic-ipi: Kill unnecessary variable - csd_flags
        numa: Mark __node_set() as __always_inline
        sched/fair: Cleanup: remove duplicate variable declaration
        sched/__wake_up_sync_key(): Fix nr_exclusive tasks which lead to WF_SYNC clearing
      5e0b3a4e
    • Linus Torvalds's avatar
      Merge branches 'perf-urgent-for-linus' and 'perf-core-for-linus' of... · 0d99b708
      Linus Torvalds authored
      Merge branches 'perf-urgent-for-linus' and 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull perf changes from Ingo Molnar:
       "As a first remark I'd like to point out that the obsolete '-f'
        (--force) option, which has not done anything for several releases,
        has been removed from 'perf record' and related utilities.  Everyone
        please update muscle memory accordingly! :-)
      
        Main changes on the perf kernel side:
      
         - Performance optimizations:
              . for trace events, by Steve Rostedt.
              . for time values, by Peter Zijlstra
      
         - New hardware support:
              . for Intel Silvermont (22nm Atom) CPUs, by Zheng Yan
              . for Intel SNB-EP uncore PMUs, by Zheng Yan
      
         - Enhanced hardware support:
              . for Intel uncore PMUs: add filter support for QPI boxes, by Zheng Yan
      
         - Core perf events code enhancements and fixes:
              . for full-nohz feature handling, by Frederic Weisbecker
              . for group events, by Jiri Olsa
              . for call chains, by Frederic Weisbecker
              . for event stream parsing, by Adrian Hunter
      
         - New ABI details:
              . Add attr->mmap2 attribute, by Stephane Eranian
              . Add PERF_EVENT_IOC_ID ioctl to return event ID, by Jiri Olsa
              . Export u64 time_zero on the mmap header page to allow TSC
                calculation, by Adrian Hunter
              . Add dummy software event, by Adrian Hunter.
              . Add a new PERF_SAMPLE_IDENTIFIER to make samples always
                parseable, by Adrian Hunter.
              . Make Power7 events available via sysfs, by Runzhen Wang.
      
         - Code cleanups and refactorings:
              . for nohz-full, by Frederic Weisbecker
              . for group events, by Jiri Olsa
      
         - Documentation updates:
              . for perf_event_type, by Peter Zijlstra
      
        Main changes on the perf tooling side (some of these tooling changes
        utilize the above kernel side changes):
      
         - Lots of 'perf trace' enhancements:
      
              . Make 'perf trace' command line arguments consistent with
                'perf record', by David Ahern.
      
              . Allow specifying syscalls a la strace, by Arnaldo Carvalho de Melo.
      
              . Add --verbose and -o/--output options, by Arnaldo Carvalho de Melo.
      
              . Support ! in -e expressions, to filter a list of syscalls,
                by Arnaldo Carvalho de Melo.
      
              . Arg formatting improvements to allow masking arguments in
                syscalls such as futex and open, where the some arguments are
                ignored and thus should not be printed depending on other args,
                by Arnaldo Carvalho de Melo.
      
              . Beautify futex open, openat, open_by_handle_at, lseek and futex
                syscalls, by Arnaldo Carvalho de Melo.
      
              . Add option to analyze events in a file versus live, so that
                one can do:
      
                 [root@zoo ~]# perf record -a -e raw_syscalls:* sleep 1
                 [ perf record: Woken up 0 times to write data ]
                 [ perf record: Captured and wrote 25.150 MB perf.data (~1098836 samples) ]
                 [root@zoo ~]# perf trace -i perf.data -e futex --duration 1
                    17.799 ( 1.020 ms): 7127 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, ua
                   113.344 (95.429 ms): 7127 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, uaddr2: 0x7fff3f6c6648, val3: 4294967
                   133.778 ( 1.042 ms): 18004 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, uaddr2: 0x7fff3f6c6648, val3: 429496
                 [root@zoo ~]#
      
                By David Ahern.
      
              . Honor target pid / tid options when analyzing a file, by David Ahern.
      
              . Introduce better formatting of syscall arguments, including so
                far beautifiers for mmap, madvise, syscall return values,
                by Arnaldo Carvalho de Melo.
      
              . Handle HUGEPAGE defines in the mmap beautifier, by David Ahern.
      
         - 'perf report/top' enhancements:
      
              . Do annotation using /proc/kcore and /proc/kallsyms when
                available, removing the forced need for a vmlinux file kernel
                assembly annotation. This also improves this use case because
                vmlinux has just the initial kernel image, not what is actually
                in use after various code patchings by things like alternatives.
                By Adrian Hunter.
      
              . Add --ignore-callees=<regex> option to collapse undesired parts
                of call graphs, by Greg Price.
      
              . Simplify symbol filtering by doing it at machine class level,
                by Adrian Hunter.
      
              . Add support for callchains in the gtk UI, by Namhyung Kim.
      
              . Add --objdump option to 'perf top', by Sukadev Bhattiprolu.
      
         - 'perf kvm' enhancements:
      
              . Add option to print only events that exceed a specified time
                duration, by David Ahern.
      
              . Improve stack trace printing, by David Ahern.
      
              . Update documentation of the live command, by David Ahern
      
              . Add perf kvm stat live mode that combines aspects of 'perf kvm
                stat' record and report, by David Ahern.
      
              . Add option to analyze specific VM in perf kvm stat report, by
                David Ahern.
      
              . Do not require /lib/modules/* on a guest, by Jason Wessel.
      
         - 'perf script' enhancements:
      
              . Fix symbol offset computation for some dsos, by David Ahern.
      
              . Fix named threads support, by David Ahern.
      
              . Don't install scripting files files when perl/python support
                is disabled, by Arnaldo Carvalho de Melo.
      
         - 'perf test' enhancements:
      
              . Add various improvements and fixes to the "vmlinux matches
                kallsyms" 'perf test' entry, related to the /proc/kcore
                annotation feature. By Adrian Hunter.
      
              . Add sample parsing test, by Adrian Hunter.
      
              . Add test for reading object code, by Adrian Hunter.
      
              . Add attr record group sampling test, by Jiri Olsa.
      
              . Misc testing infrastructure improvements and other details,
                by Jiri Olsa.
      
         - 'perf list' enhancements:
      
              . Skip unsupported hardware events, by Namhyung Kim.
      
              . List pmu events, by Andi Kleen.
      
         - 'perf diff' enhancements:
      
              . Add support for more than two files comparison, by Jiri Olsa.
      
         - 'perf sched' enhancements:
      
              . Various improvements, including removing reliance on some
                scheduler tracepoints that provide the same information as the
                PERF_RECORD_{FORK,EXIT} events. By David Ahern.
      
              . Remove odd build stall by moving a large struct initialization
                from a local variable to a global one, by Namhyung Kim.
      
         - 'perf stat' enhancements:
      
              . Add --initial-delay option to skip measuring for a defined
                startup phase, by Andi Kleen.
      
         - Generic perf tooling infrastructure/plumbing changes:
      
              . Tidy up sample parsing validation, by Adrian Hunter.
      
              . Fix up jobserver setup in libtraceevent Makefile.
                by Arnaldo Carvalho de Melo.
      
              . Debug improvements, by Adrian Hunter.
      
              . Fix correlation of samples coming after PERF_RECORD_EXIT event,
                by David Ahern.
      
              . Improve robustness of the topology parsing code,
                by Stephane Eranian.
      
              . Add group leader sampling, that allows just one event in a group
                to sample while the other events have just its values read,
                by Jiri Olsa.
      
              . Add support for a new modifier "D", which requests that the
                event, or group of events, be pinned to the PMU.
                By Michael Ellerman.
      
              . Support callchain sorting based on addresses, by Andi Kleen
      
              . Prep work for multi perf data file storage, by Jiri Olsa.
      
              . libtraceevent cleanups, by Namhyung Kim.
      
        And lots and lots of other fixes and code reorganizations that did not
        make it into the list, see the shortlog, diffstat and the Git log for
        details!"
      
      [ Also merge a leftover from the 3.11 cycle ]
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf: Prevent race in unthrottling code
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (237 commits)
        perf trace: Tell arg formatters the arg index
        perf trace: Add beautifier for open's flags arg
        perf trace: Add beautifier for lseek's whence arg
        perf tools: Fix symbol offset computation for some dsos
        perf list: Skip unsupported events
        perf tests: Add 'keep tracking' test
        perf tools: Add support for PERF_COUNT_SW_DUMMY
        perf: Add a dummy software event to keep tracking
        perf trace: Add beautifier for futex 'operation' parm
        perf trace: Allow syscall arg formatters to mask args
        perf: Convert kmalloc_node(...GFP_ZERO...) to kzalloc_node()
        perf: Export struct perf_branch_entry to userspace
        perf: Add attr->mmap2 attribute to an event
        perf/x86: Add Silvermont (22nm Atom) support
        perf/x86: use INTEL_UEVENT_EXTRA_REG to define MSR_OFFCORE_RSP_X
        perf trace: Handle missing HUGEPAGE defines
        perf trace: Honor target pid / tid options when analyzing a file
        perf trace: Add option to analyze events in a file versus live
        perf evlist: Add tracepoint lookup by name
        perf tests: Add a sample parsing test
        ...
      0d99b708
    • Linus Torvalds's avatar
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4689550b
      Linus Torvalds authored
      Pull core/locking changes from Ingo Molnar:
       "Main changes:
      
         - another mutex optimization, from Davidlohr Bueso
      
         - improved lglock lockdep tracking, from Michel Lespinasse
      
         - [ assorted smaller updates, improvements, cleanups. ]"
      
      * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        generic-ipi/locking: Fix misleading smp_call_function_any() description
        hung_task debugging: Print more info when reporting the problem
        mutex: Avoid label warning when !CONFIG_MUTEX_SPIN_ON_OWNER
        mutex: Do not unnecessarily deal with waiters
        mutex: Fix/document access-once assumption in mutex_can_spin_on_owner()
        lglock: Update lockdep annotations to report recursive local locks
        lockdep: Introduce lock_acquire_exclusive()/shared() helper macros
      4689550b
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b854e4de
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "Main RCU changes this cycle were:
      
         - Full-system idle detection.  This is for use by Frederic
           Weisbecker's adaptive-ticks mechanism.  Its purpose is to allow the
           timekeeping CPU to shut off its tick when all other CPUs are idle.
      
         - Miscellaneous fixes.
      
         - Improved rcutorture test coverage.
      
         - Updated RCU documentation"
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (30 commits)
        nohz_full: Force RCU's grace-period kthreads onto timekeeping CPU
        nohz_full: Add full-system-idle state machine
        jiffies: Avoid undefined behavior from signed overflow
        rcu: Simplify _rcu_barrier() processing
        rcu: Make rcutorture emit online failures if verbose
        rcu: Remove unused variable from rcu_torture_writer()
        rcu: Sort rcutorture module parameters
        rcu: Increase rcutorture test coverage
        rcu: Add duplicate-callback tests to rcutorture
        doc: Fix memory-barrier control-dependency example
        rcu: Update RTFP documentation
        nohz_full: Add full-system-idle arguments to API
        nohz_full: Add full-system idle states and variables
        nohz_full: Add per-CPU idle-state tracking
        nohz_full: Add rcu_dyntick data for scalable detection of all-idle state
        nohz_full: Add Kconfig parameter for scalable detection of all-idle state
        nohz_full: Add testing information to documentation
        rcu: Eliminate unused APIs intended for adaptive ticks
        rcu: Select IRQ_WORK from TREE_PREEMPT_RCU
        rculist: list_first_or_null_rcu() should use list_entry_rcu()
        ...
      b854e4de
    • Linus Torvalds's avatar
      Merge tag 'for-3.12-rc1' of git://gitorious.org/linux-pwm/linux-pwm · 458c3f60
      Linus Torvalds authored
      Pull pwm changes from Thierry Reding:
       "A set of patches makes the device tree documentation for the various
        PWM drivers more consistent.  Device tree support is added to the
        Renesas TPU driver.  The sysfs interface now makes use of dev_groups.
        Other than that there is a healthy assortment of fixes and
        enhancements for minor issues that have shown up"
      
      * tag 'for-3.12-rc1' of git://gitorious.org/linux-pwm/linux-pwm:
        pwm: pxa: Use module_platform_driver
        pwm: tiehrpwm: add missing __iomem annotation
        pwm: tiecap: add CONFIG_PM_SLEEP to ecap_pwm_{save,restore}_context()
        pwm: simplify use of devm_ioremap_resource
        pwm: renesas-tpu: Add DT support
        ARM: dts: Use the PWM polarity flags
        pwm: Update DT bindings to reference pwm.txt for cells documentation
        pwm: Use the DT macro directly when parsing PWM DT flags
        pwm: Add PWM polarity flag macro for DT
        pwm: mxs: Check the return value from stmp_reset_block()
        pwm: convert class code to use dev_groups
      458c3f60
    • Linus Torvalds's avatar
      Merge tag 'please-pull-pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · f83b0a4e
      Linus Torvalds authored
      Pull pstore changes from Tony Luck:
       "A big part of this is the addition of compression to the generic
        pstore layer so that all backends can use the pitiful amounts of
        storage they control more effectively.  Three other small
        fixes/cleanups too.
      
      * tag 'please-pull-pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        pstore/ram: (really) fix undefined usage of rounddown_pow_of_two
        pstore/ram: Read and write to the 'compressed' flag of pstore
        efi-pstore: Read and write to the 'compressed' flag of pstore
        erst: Read and write to the 'compressed' flag of pstore
        powerpc/pseries: Read and write to the 'compressed' flag of pstore
        pstore: Add file extension to pstore file if compressed
        pstore: Add decompression support to pstore
        pstore: Introduce new argument 'compressed' in the read callback
        pstore: Add compression support to pstore
        pstore/Kconfig: Select ZLIB_DEFLATE and ZLIB_INFLATE when PSTORE is selected
        pstore: Add new argument 'compressed' in pstore write callback
        powerpc/pseries: Remove (de)compression in nvram with pstore enabled
        pstore: d_alloc_name() doesn't return an ERR_PTR
        acpi/apei/erst: Add missing iounmap() on error in erst_exec_move_data()
      f83b0a4e
    • Linus Torvalds's avatar
      Merge branch 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 32dad03d
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
       "A lot of activities on the cgroup front.  Most changes aren't visible
        to userland at all at this point and are laying foundation for the
        planned unified hierarchy.
      
         - The biggest change is decoupling the lifetime management of css
           (cgroup_subsys_state) from that of cgroup's.  Because controllers
           (cpu, memory, block and so on) will need to be dynamically enabled
           and disabled, css which is the association point between a cgroup
           and a controller may come and go dynamically across the lifetime of
           a cgroup.  Till now, css's were created when the associated cgroup
           was created and stayed till the cgroup got destroyed.
      
           Assumptions around this tight coupling permeated through cgroup
           core and controllers.  These assumptions are gradually removed,
           which consists bulk of patches, and css destruction path is
           completely decoupled from cgroup destruction path.  Note that
           decoupling of creation path is relatively easy on top of these
           changes and the patchset is pending for the next window.
      
         - cgroup has its own event mechanism cgroup.event_control, which is
           only used by memcg.  It is overly complex trying to achieve high
           flexibility whose benefits seem dubious at best.  Going forward,
           new events will simply generate file modified event and the
           existing mechanism is being made specific to memcg.  This pull
           request contains prepatory patches for such change.
      
         - Various fixes and cleanups"
      
      Fixed up conflict in kernel/cgroup.c as per Tejun.
      
      * 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (69 commits)
        cgroup: fix cgroup_css() invocation in css_from_id()
        cgroup: make cgroup_write_event_control() use css_from_dir() instead of __d_cgrp()
        cgroup: make cgroup_event hold onto cgroup_subsys_state instead of cgroup
        cgroup: implement CFTYPE_NO_PREFIX
        cgroup: make cgroup_css() take cgroup_subsys * instead and allow NULL subsys
        cgroup: rename cgroup_css_from_dir() to css_from_dir() and update its syntax
        cgroup: fix cgroup_write_event_control()
        cgroup: fix subsystem file accesses on the root cgroup
        cgroup: change cgroup_from_id() to css_from_id()
        cgroup: use css_get() in cgroup_create() to check CSS_ROOT
        cpuset: remove an unncessary forward declaration
        cgroup: RCU protect each cgroup_subsys_state release
        cgroup: move subsys file removal to kill_css()
        cgroup: factor out kill_css()
        cgroup: decouple cgroup_subsys_state destruction from cgroup destruction
        cgroup: replace cgroup->css_kill_cnt with ->nr_css
        cgroup: bounce cgroup_subsys_state ref kill confirmation to a work item
        cgroup: move cgroup->subsys[] assignment to online_css()
        cgroup: reorganize css init / exit paths
        cgroup: add __rcu modifier to cgroup->subsys[]
        ...
      32dad03d
    • Linus Torvalds's avatar
      Merge branch 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 357397a1
      Linus Torvalds authored
      Pull libata changes from Tejun Heo:
       "Two interesting changes.
      
         - libata acpi handling has been restructured so that the association
           between ata devices and ACPI handles are less convoluted.  This
           change shouldn't change visible behavior.
      
         - Queued TRIM support, which enables sending TRIM to the device
           without draining in-flight RW commands, is added.  Currently only
           enabled for ahci (and likely to stay that way for the foreseeable
           future).
      
        Other changes are driver-specific updates / fixes"
      
      * 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        libata: bugfix: Remove __le32 in ata_tf_to_fis()
        libata: acpi: Remove ata_dev_acpi_handle stub in libata.h
        libata: Add support for queued DSM TRIM
        libata: Add support for SEND/RECEIVE FPDMA QUEUED
        libata: Add H2D FIS "auxiliary" port flag
        libata: Populate host-to-device FIS "auxiliary" field
        ata: acpi: rework the ata acpi bind support
        sata, highbank: send extra clock cycles in SGPIO patterns
        sata, highbank: set tx_atten override bits
        devicetree: create a separate binding description for sata_highbank
        drivers/ata/sata_rcar.c: simplify use of devm_ioremap_resource
        sata highbank: enable 64-bit DMA mask when using LPAE
        ata: pata_samsung_cf: add missing __iomem annotation
        ata: pata_arasan: Staticize local symbols
        sata_mv: Remove unneeded CONFIG_HAVE_CLK ifdefs
        ata: use dev_get_platdata()
        sata_mv: Remove unneeded forward declaration
        libata: acpi: remove dead code for ata_acpi_(un)bind
        libata: move 'struct ata_taskfile' and friends from ata.h to libata.h
      357397a1
    • Linus Torvalds's avatar
      Merge branch 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 9ee52a16
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
       "Nothing interesting.  All are doc / comment updates"
      
      * 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Correct/Drop references to gcwq in Documentation
        workqueue: Fix manage_workers() RETURNS description
        workqueue: Comment correction in file header
        workqueue: mark WQ_NON_REENTRANT deprecated
      9ee52a16
    • Linus Torvalds's avatar
      Merge branch 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · 96d4e231
      Linus Torvalds authored
      Pull single percpu update from Tejun Heo:
       "Just a single patch to update type verification macro for percpu
        accessors.
      
        Christoph is trying to replace __get_cpu_var() with this_cpu accessors
        which needs this update.  There are still some issues to be resolved
        but eventually the conversion patches are likely to be routed through
        different trees, so I think it'd be convenient to merge this commit
        early"
      
      * 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu: Make __verify_pcu_ptr handle per cpu pointers to arrays
      96d4e231
  6. 03 Sep, 2013 3 commits
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.12-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · a9238741
      Linus Torvalds authored
      Pull PCI changes from Bjorn Helgaas:
      
        PCI device hotplug:
          - Use PCIe native hotplug, not ACPI hotplug, when possible (Neil Horman)
          - Assign resources on per-host bridge basis (Yinghai Lu)
      
        MPS (Max Payload Size):
          - Allow larger MPS settings below hotplug-capable Root Port (Yijing Wang)
          - Add warnings about unsafe MPS settings (Yijing Wang)
          - Simplify interface and messages (Bjorn Helgaas)
      
        SR-IOV:
          - Return -ENOSYS on non-SR-IOV devices (Stefan Assmann)
          - Update NumVFs register when disabling SR-IOV (Yijing Wang)
      
        Virtualization:
          - Add bus and slot reset support (Alex Williamson)
          - Fix ACS (Access Control Services) issues (Alex Williamson)
      
        Miscellaneous:
          - Simplify PCIe Capability accessors (Bjorn Helgaas)
          - Add pcibios_pm_ops for arch-specific hibernate stuff (Sebastian Ott)
          - Disable decoding during BAR sizing only when necessary (Zoltan Kiss)
          - Delay enabling bridges until they're needed (Yinghai Lu)
          - Split Designware support into Synopsys and Exynos parts (Jingoo Han)
          - Convert class code to use dev_groups (Greg Kroah-Hartman)
          - Cleanup Designware and Exynos I/O access wrappers (Seungwon Jeon)
          - Fix bridge I/O window alignment (Bjorn Helgaas)
          - Add pci_wait_for_pending_transaction() (Casey Leedom)
          - Use devm_ioremap_resource() in Marvell driver (Tushar Behera)
      
      * tag 'pci-v3.12-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (63 commits)
        PCI/ACPI: Fix _OSC ordering to allow PCIe hotplug use when available
        PCI: exynos: Add I/O access wrappers
        PCI: designware: Drop "addr" arg from dw_pcie_readl_rc()/dw_pcie_writel_rc()
        PCI: Remove pcie_cap_has_devctl()
        PCI: Support PCIe Capability Slot registers only for ports with slots
        PCI: Remove PCIe Capability version checks
        PCI: Allow PCIe Capability link-related register access for switches
        PCI: Add offsets of PCIe capability registers
        PCI: Tidy bitmasks and spacing of PCIe capability definitions
        PCI: Remove obsolete comment reference to pci_pcie_cap2()
        PCI: Clarify PCI_EXP_TYPE_PCI_BRIDGE comment
        PCI: Rename PCIe capability definitions to follow convention
        PCI: Warn if unsafe MPS settings detected
        PCI: Fix MPS peer-to-peer DMA comment syntax
        PCI: Disable decoding for BAR sizing only when it was actually enabled
        PCI: Add comment about needing pci_msi_off() even when CONFIG_PCI_MSI=n
        PCI: Add pcibios_pm_ops for optional arch-specific hibernate functionality
        PCI: Don't restrict MPS for slots below Root Ports
        PCI: Simplify MPS test for Downstream Port
        PCI: Remove unnecessary check for pcie_get_mps() failure
        ...
      a9238741
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 40031da4
      Linus Torvalds authored
      Pull ACPI and power management updates from Rafael Wysocki:
      
       1) ACPI-based PCI hotplug (ACPIPHP) subsystem rework and introduction
          of Intel Thunderbolt support on systems that use ACPI for signalling
          Thunderbolt hotplug events.  This also should make ACPIPHP work in
          some cases in which it was known to have problems.  From
          Rafael J Wysocki, Mika Westerberg and Kirill A Shutemov.
      
       2) ACPI core code cleanups and dock station support cleanups from
          Jiang Liu and Rafael J Wysocki.
      
       3) Fixes for locking problems related to ACPI device hotplug from
          Rafael J Wysocki.
      
       4) ACPICA update to version 20130725 includig fixes, cleanups, support
          for more than 256 GPEs per GPE block and a change to make the ACPI
          PM Timer optional (we've seen systems without the PM Timer in the
          field already).  One of the fixes, related to the DeRefOf operator,
          is necessary to prevent some Windows 8 oriented AML from causing
          problems to happen.  From Bob Moore, Lv Zheng, and Jung-uk Kim.
      
       5) Removal of the old and long deprecated /proc/acpi/event interface
          and related driver changes from Thomas Renninger.
      
       6) ACPI and Xen changes to make the reduced hardware sleep work with
          the latter from Ben Guthro.
      
       7) ACPI video driver cleanups and a blacklist of systems that should
          not tell the BIOS that they are compatible with Windows 8 (or ACPI
          backlight and possibly other things will not work on them).  From
          Felipe Contreras.
      
       8) Assorted ACPI fixes and cleanups from Aaron Lu, Hanjun Guo,
          Kuppuswamy Sathyanarayanan, Lan Tianyu, Sachin Kamat, Tang Chen,
          Toshi Kani, and Wei Yongjun.
      
       9) cpufreq ondemand governor target frequency selection change to
          reduce oscillations between min and max frequencies (essentially,
          it causes the governor to choose target frequencies proportional
          to load) from Stratos Karafotis.
      
      10) cpufreq fixes allowing sysfs attributes file permissions to be
          preserved over suspend/resume cycles Srivatsa S Bhat.
      
      11) Removal of Device Tree parsing for CPU device nodes from multiple
          cpufreq drivers that required some changes related to
          of_get_cpu_node() to be made in a few architectures and in the
          driver core.  From Sudeep KarkadaNagesha.
      
      12) cpufreq core fixes and cleanups related to mutual exclusion and
          driver module references from Viresh Kumar, Lukasz Majewski and
          Rafael J Wysocki.
      
      13) Assorted cpufreq fixes and cleanups from Amit Daniel Kachhap,
          Bartlomiej Zolnierkiewicz, Hanjun Guo, Jingoo Han, Joseph Lo,
          Julia Lawall, Li Zhong, Mark Brown, Sascha Hauer, Stephen Boyd,
          Stratos Karafotis, and Viresh Kumar.
      
      14) Fixes to prevent race conditions in coupled cpuidle from happening
          from Colin Cross.
      
      15) cpuidle core fixes and cleanups from Daniel Lezcano and
          Tuukka Tikkanen.
      
      16) Assorted cpuidle fixes and cleanups from Daniel Lezcano,
          Geert Uytterhoeven, Jingoo Han, Julia Lawall, Linus Walleij,
          and Sahara.
      
      17) System sleep tracing changes from Todd E Brandt and Shuah Khan.
      
      18) PNP subsystem conversion to using struct dev_pm_ops for power
          management from Shuah Khan.
      
      * tag 'pm+acpi-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (217 commits)
        cpufreq: Don't use smp_processor_id() in preemptible context
        cpuidle: coupled: fix race condition between pokes and safe state
        cpuidle: coupled: abort idle if pokes are pending
        cpuidle: coupled: disable interrupts after entering safe state
        ACPI / hotplug: Remove containers synchronously
        driver core / ACPI: Avoid device hot remove locking issues
        cpufreq: governor: Fix typos in comments
        cpufreq: governors: Remove duplicate check of target freq in supported range
        cpufreq: Fix timer/workqueue corruption due to double queueing
        ACPI / EC: Add ASUSTEK L4R to quirk list in order to validate ECDT
        ACPI / thermal: Add check of "_TZD" availability and evaluating result
        cpufreq: imx6q: Fix clock enable balance
        ACPI: blacklist win8 OSI for buggy laptops
        cpufreq: tegra: fix the wrong clock name
        cpuidle: Change struct menu_device field types
        cpuidle: Add a comment warning about possible overflow
        cpuidle: Fix variable domains in get_typical_interval()
        cpuidle: Fix menu_device->intervals type
        cpuidle: CodingStyle: Break up multiple assignments on single line
        cpuidle: Check called function parameter in get_typical_interval()
        ...
      40031da4
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · dcaaaeac
      Linus Torvalds authored
      Pull SCSI target fixes from Nicholas Bellinger:
       "The first patch is to address a long standing issue where INQUIRY
        vendor + model response data was not correctly padded with ASCII
        spaces, causing MSFT and Falconstor multipath stacks to not function
        with our LUNs.
      
        The second -> forth patches are additional iscsi-target regression
        fixes for the post >= v3.10 iser-target changes.  The second and third
        are failure cases that have appeared during further testing, and the
        forth is only reproducible with malformed NOP packets.
      
        The fifth patch is a v3.11 specific regression caused by a recent
        optimization that showed up during WRITE I/O failure testing.
      
        I'll be sending Patch #1 and Patch #5 to Greg-KH separately for
        stable"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        target: Fix se_cmd->state_list leak regression during WRITE failure
        iscsi-target: Fix potential NULL pointer in solicited NOPOUT reject
        iscsi-target: Fix iscsit_transport reference leak during NP thread reset
        iscsi-target: Fix ImmediateData=Yes failure regression in >= v3.10
        target: Fix trailing ASCII space usage in INQUIRY vendor+model
      dcaaaeac