1. 21 Jan, 2014 12 commits
  2. 20 Jan, 2014 28 commits
    • Linus Torvalds's avatar
      Merge tag 'staging-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · de4fe30a
      Linus Torvalds authored
      Pull staging driver tree changes from Greg KH:
       "Here's the big drivers/staging/ update for 3.14-rc1
      
        Lots and lots of cleanups, IIO driver updates are also mixed in here
        due to the subsystem still crossing staging and drivers/iio/, and the
        dwc2 driver is moved out of staging.  There's a new driver (rts5208),
        which ends up making us adding more lines than removing, but overall
        there was lots of work toward moving code out of here, which was good
      
        All of this has been in linux-next with no reported issues"
      
      * tag 'staging-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1084 commits)
        lustre: delete linux/lustre_debug.h
        staging: lustre: remove some unused debug macros
        usb: dwc2: move device tree bindings doc to correct place
        staging: vt6656: sparse fixes: iwctl_giwgenie use memcpy.
        staging: vt6656: sparse fixes: iwctl_siwgenie use memcpy.
        staging: vt6656: sparse fixes ethtool_ioctl Use struct ifreq *
        staging: vt6656: sparse fixes: dpc.c missing dpc.h
        staging: lustre: libcfs_debug: small whitespace cleanups
        staging: lustre: libcfs_debug.h: remove extra blank lines
        staging: lustre: libcfs_debug.h: Align backslashes in macros
        staging: lustre: libcfs_debug.h: align define values
        staging: tidspbridge: adjust error return code (bugfix)
        Staging: rts5139: rts51x_card: fixed style issues
        staging: wlags49_h2: Fix "do not use C99 //" in wl_cs.h, wl_enc.h wl_main.h and wl_wext.h
        Staging: rtl8188eu: Fixed "foo * bar" related coding style issues
        Staging: rtl8188eu: Fixed required spaces after ',' and around '=' and '=='
        staging: vt6655: Fix memory leak in wpa_ioctl()
        imx-drm: parallel-display: honor 'native-mode' property when selecting video mode from DT
        staging: drm/imx: don't drop crtc offsets when doing pageflip
        staging: drm/imx: handle framebuffer offsets correctly
        ...
      de4fe30a
    • Linus Torvalds's avatar
      Merge tag 'driver-core-3.14-rc1' of... · d3bad75a
      Linus Torvalds authored
      Merge tag 'driver-core-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core / sysfs patches from Greg KH:
       "Here's the big driver core and sysfs patch set for 3.14-rc1.
      
        There's a lot of work here moving sysfs logic out into a "kernfs" to
        allow other subsystems to also have a virtual filesystem with the same
        attributes of sysfs (handle device disconnect, dynamic creation /
        removal as needed / unneeded, etc)
      
        This is primarily being done for the cgroups filesystem, but the goal
        is to also move debugfs to it when it is ready, solving all of the
        known issues in that filesystem as well.  The code isn't completed
        yet, but all should be stable now (there is a big section that was
        reverted due to problems found when testing)
      
        There's also some other smaller fixes, and a driver core addition that
        allows for a "collection" of objects, that the DRM people will be
        using soon (it's in this tree to make merges after -rc1 easier)
      
        All of this has been in linux-next with no reported issues"
      
      * tag 'driver-core-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (113 commits)
        kernfs: associate a new kernfs_node with its parent on creation
        kernfs: add struct dentry declaration in kernfs.h
        kernfs: fix get_active failure handling in kernfs_seq_*()
        Revert "kernfs: fix get_active failure handling in kernfs_seq_*()"
        Revert "kernfs: replace kernfs_node->u.completion with kernfs_root->deactivate_waitq"
        Revert "kernfs: remove KERNFS_ACTIVE_REF and add kernfs_lockdep()"
        Revert "kernfs: remove KERNFS_REMOVED"
        Revert "kernfs: restructure removal path to fix possible premature return"
        Revert "kernfs: invoke kernfs_unmap_bin_file() directly from __kernfs_remove()"
        Revert "kernfs: remove kernfs_addrm_cxt"
        Revert "kernfs: make kernfs_get_active() block if the node is deactivated but not removed"
        Revert "kernfs: implement kernfs_{de|re}activate[_self]()"
        Revert "kernfs, sysfs, driver-core: implement kernfs_remove_self() and its wrappers"
        Revert "pci: use device_remove_file_self() instead of device_schedule_callback()"
        Revert "scsi: use device_remove_file_self() instead of device_schedule_callback()"
        Revert "s390: use device_remove_file_self() instead of device_schedule_callback()"
        Revert "sysfs, driver-core: remove unused {sysfs|device}_schedule_callback_owner()"
        Revert "kernfs: remove unnecessary NULL check in __kernfs_remove()"
        kernfs: remove unnecessary NULL check in __kernfs_remove()
        drivers/base: provide an infrastructure for componentised subsystems
        ...
      d3bad75a
    • Linus Torvalds's avatar
      Merge tag 'char-misc-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 9f67627a
      Linus Torvalds authored
      Pull char/misc driver patches from Greg KH:
       "Here's the big char/misc driver patches for 3.14-rc1.
      
        Lots of little things, and a new "big" driver, genwqe.  Full details
        are in the shortlog"
      
      * tag 'char-misc-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (90 commits)
        mei: limit the number of consecutive resets
        mei: revamp mei reset state machine
        drivers/char: don't use module_init in non-modular ttyprintk.c
        VMCI: fix error handling path when registering guest driver
        extcon: gpio: Add power resume support
        Documentation: HOWTO: Updates on subsystem trees, patchwork, -next (vs. -mm) in ko_KR
        Documentation: HOWTO: update for 2.6.x -> 3.x versioning in ko_KR
        Documentation: HOWTO: update stable address in ko_KR
        Documentation: HOWTO: update LXR web link in ko_KR
        char: nwbutton: open-code interruptible_sleep_on
        mei: fix syntax in comments and debug output
        mei: nfc: mei_nfc_free has to be called under lock
        mei: use hbm idle state to prevent spurious resets
        mei: do not run reset flow from the interrupt thread
        misc: genwqe: fix return value check in genwqe_device_create()
        GenWQE: Fix warnings for sparc
        GenWQE: Fix compile problems for Alpha
        Documentation/misc-devices/mei/mei-amt-version.c: remove unneeded call of mei_deinit()
        GenWQE: Rework return code for flash-update ioctl
        sgi-xp: open-code interruptible_sleep_on_timeout
        ...
      9f67627a
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 82b51734
      Linus Torvalds authored
      Pull ARM64 updates from Catalin Marinas:
       - CPU suspend support on top of PSCI (firmware Power State Coordination
         Interface)
       - jump label support
       - CMA can now be enabled on arm64
       - HWCAP bits for crypto and CRC32 extensions
       - optimised percpu using tpidr_el1 register
       - code cleanup
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (42 commits)
        arm64: fix typo in entry.S
        arm64: kernel: restore HW breakpoint registers in cpu_suspend
        jump_label: use defined macros instead of hard-coding for better readability
        arm64, jump label: optimize jump label implementation
        arm64, jump label: detect %c support for ARM64
        arm64: introduce aarch64_insn_gen_{nop|branch_imm}() helper functions
        arm64: move encode_insn_immediate() from module.c to insn.c
        arm64: introduce interfaces to hotpatch kernel and module code
        arm64: introduce basic aarch64 instruction decoding helpers
        arm64: dts: Reduce size of virtio block device for foundation model
        arm64: Remove unused __data_loc variable
        arm64: Enable CMA
        arm64: Warn on NULL device structure for dma APIs
        arm64: Add hwcaps for crypto and CRC32 extensions.
        arm64: drop redundant macros from read_cpuid()
        arm64: Remove outdated comment
        arm64: cmpxchg: update macros to prevent warnings
        arm64: support single-step and breakpoint handler hooks
        ARM64: fix framepointer check in unwind_frame
        ARM64: check stack pointer in get_wchan
        ...
      82b51734
    • Linus Torvalds's avatar
      Merge branch 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 15c81026
      Linus Torvalds authored
      Pull x32 uapi changes from Peter Anvin:
       "This is the first few of a set of patches by H.J.  Lu to make the
        kernel uapi headers usable for x32, as required by some non-glibc
        libcs.
      
        These particular patches make the stat and statfs structures usable"
      
      * 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, x32: Use __kernel_long_t for __statfs_word
        x86, x32: Use __kernel_long_t/__kernel_ulong_t in x86-64 stat.h
      15c81026
    • Linus Torvalds's avatar
      Merge branch 'x86/mpx' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c9cdd9a6
      Linus Torvalds authored
      Pull x86 cpufeature and mpx updates from Peter Anvin:
       "This includes the basic infrastructure for MPX (Memory Protection
        Extensions) support, but does not include MPX support itself.  It is,
        however, a prerequisite for KVM support for MPX, which I believe will
        be pushed later this merge window by the KVM team.
      
        This includes moving the functionality in
        futex_atomic_cmpxchg_inatomic() into a new function in uaccess.h so it
        can be reused - this will be used by the final MPX patches.
      
        The actual MPX functionality (map management and so on) will be pushed
        in a future merge window, when ready"
      
      * 'x86/mpx' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/intel/mpx: Remove unused LWP structure
        x86, mpx: Add MPX related opcodes to the x86 opcode map
        x86: replace futex_atomic_cmpxchg_inatomic() with user_atomic_cmpxchg_inatomic
        x86: add user_atomic_cmpxchg_inatomic at uaccess.h
        x86, xsave: Support eager-only xsave features, add MPX support
        x86, cpufeature: Define the Intel MPX feature flag
      c9cdd9a6
    • Linus Torvalds's avatar
      Merge branch 'x86-kaslr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f4bcd8cc
      Linus Torvalds authored
      Pull x86 kernel address space randomization support from Peter Anvin:
       "This enables kernel address space randomization for x86"
      
      * 'x86-kaslr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, kaslr: Clarify RANDOMIZE_BASE_MAX_OFFSET
        x86, kaslr: Remove unused including <linux/version.h>
        x86, kaslr: Use char array to gain sizeof sanity
        x86, kaslr: Add a circular multiply for better bit diffusion
        x86, kaslr: Mix entropy sources together as needed
        x86/relocs: Add percpu fixup for GNU ld 2.23
        x86, boot: Rename get_flags() and check_flags() to *_cpuflags()
        x86, kaslr: Raise the maximum virtual address to -1 GiB on x86_64
        x86, kaslr: Report kernel offset on panic
        x86, kaslr: Select random position from e820 maps
        x86, kaslr: Provide randomness functions
        x86, kaslr: Return location from decompress_kernel
        x86, boot: Move CPU flags out of cpucheck
        x86, relocs: Add more per-cpu gold special cases
      f4bcd8cc
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7fe67a11
      Linus Torvalds authored
      Pull leftover x86 fixes from Ingo Molnar:
       "Two leftover fixes that did not make it into v3.13"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Add check for number of available vectors before CPU down
        x86, cpu, amd: Add workaround for family 16h, erratum 793
      7fe67a11
    • Linus Torvalds's avatar
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fab5669d
      Linus Torvalds authored
      Pull x86 RAS changes from Ingo Molnar:
      
       - SCI reporting for other error types not only correctable ones
      
       - GHES cleanups
      
       - Add the functionality to override error reporting agents as some
         machines are sporting a new extended error logging capability which,
         if done properly in the BIOS, makes a corresponding EDAC module
         redundant
      
       - PCIe AER tracepoint severity levels fix
      
       - Error path correction for the mce device init
      
       - MCE timer fix
      
       - Add more flexibility to the error injection (EINJ) debugfs interface
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, mce: Fix mce_start_timer semantics
        ACPI, APEI, GHES: Cleanup ghes memory error handling
        ACPI, APEI: Cleanup alignment-aware accesses
        ACPI, APEI, GHES: Do not report only correctable errors with SCI
        ACPI, APEI, EINJ: Changes to the ACPI/APEI/EINJ debugfs interface
        ACPI, eMCA: Combine eMCA/EDAC event reporting priority
        EDAC, sb_edac: Modify H/W event reporting policy
        EDAC: Add an edac_report parameter to EDAC
        PCI, AER: Fix severity usage in aer trace event
        x86, mce: Call put_device on device_register failure
      fab5669d
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 74e8ee82
      Linus Torvalds authored
      Pull Intel SoC changes from Ingo Molnar:
       "Improved Intel SoC platform support"
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, tsc, apic: Unbreak static (MSR) calibration when CONFIG_X86_LOCAL_APIC=n
        x86, tsc: Add static (MSR) TSC calibration on Intel Atom SoCs
        arch: x86: New MailBox support driver for Intel SOC's
      74e8ee82
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8bd6964c
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2bb2c5e2
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-intel-mid-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4500cf60
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-kexec-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 972d5e7e
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5d4863e4
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2a0fede9
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 06bc0f4a
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4cd41569
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1a7dbbcc
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6c646143
      Linus Torvalds authored
      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
    • Ingo Molnar's avatar
      x86/intel/mpx: Remove unused LWP structure · 741e3902
      Ingo Molnar authored
      We don't support LWP yet, don't give the impression that we do:
      represent the LWP state as opaque 128 bytes, the way Linux sees it
      currently.
      
      Cc: Qiaowei Ren <qiaowei.ren@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/n/tip-ecarmjtfKpanpAapfck6dj6g@git.kernel.orgSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      741e3902
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a0fa1dd3
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9326657a
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2cc3f16c
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'core-stackprotector-for-linus' of... · ad3ab302
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a693c46e
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6ffbe7d1
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'core-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 897aea30
      Linus Torvalds authored
      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