1. 10 Feb, 2015 35 commits
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · c5452a58
      Linus Torvalds authored
      Pull quota interface unification and misc cleanups from Jan Kara:
       "The first part of the series unifying XFS and VFS quota interfaces.
      
        This part unifies turning quotas on and off so quota-tools and
        xfs_quota can be used to manage any filesystem.  This is useful so
        that userspace doesn't have to distinguish which filesystem it is
        working with.  As a result we can then easily reuse tests for project
        quotas in XFS for ext4.
      
        This also contains minor cleanups and fixes for udf, isofs, and ext3"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: (23 commits)
        udf: remove bool assignment to 0/1
        udf: use bool for done
        quota: Store maximum space limit in bytes
        quota: Remove quota_on_meta callback
        ocfs2: Use generic helpers for quotaon and quotaoff
        ext4: Use generic helpers for quotaon and quotaoff
        quota: Add ->quota_{enable,disable} callbacks for VFS quotas
        quota: Wire up ->quota_{enable,disable} callbacks into Q_QUOTA{ON,OFF}
        quota: Split ->set_xstate callback into two
        xfs: Remove some pointless quota checks
        xfs: Remove some useless flags tests
        xfs: Remove useless test
        quota: Verify flags passed to Q_SETINFO
        quota: Cleanup flags definitions
        ocfs2: Move OLQF_CLEAN flag out of generic quota flags
        quota: Don't store flags for v2 quota format
        jbd: drop jbd_ENOSYS debug
        udf: destroy sbi mutex in put_super
        udf: Check length of extended attributes and allocation descriptors
        udf: Remove repeated loads blocksize
        ...
      c5452a58
    • Linus Torvalds's avatar
      Merge tag 'locks-v3.20-1' of git://git.samba.org/jlayton/linux · 4b4f8580
      Linus Torvalds authored
      Pull file locking related changes #1 from Jeff Layton:
       "This patchset contains a fairly major overhaul of how file locks are
        tracked within the inode.  Rather than a single list, we now create a
        per-inode "lock context" that contains individual lists for the file
        locks, and a new dedicated spinlock for them.
      
        There are changes in other trees that are based on top of this set so
        it may be easiest to pull this in early"
      
      * tag 'locks-v3.20-1' of git://git.samba.org/jlayton/linux:
        locks: update comments that refer to inode->i_flock
        locks: consolidate NULL i_flctx checks in locks_remove_file
        locks: keep a count of locks on the flctx lists
        locks: clean up the lm_change prototype
        locks: add a dedicated spinlock to protect i_flctx lists
        locks: remove i_flock field from struct inode
        locks: convert lease handling to file_lock_context
        locks: convert posix locks to file_lock_context
        locks: move flock locks to file_lock_context
        ceph: move spinlocking into ceph_encode_locks_to_buffer and ceph_count_locks
        locks: add a new struct file_locking_context pointer to struct inode
        locks: have locks_release_file use flock_lock_file to release generic flock locks
        locks: add new struct list_head to struct file_lock
      4b4f8580
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-3.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 87291235
      Linus Torvalds authored
      Pull ACPI and power management updates from Rafael Wysocki:
       "We have a few new features this time, including a new SFI-based
        cpufreq driver, a new devfreq driver for Tegra Activity Monitor, a new
        devfreq class for providing its governors with raw utilization data
        and a new ACPI driver for AMD SoCs.
      
        Still, the majority of changes here are reworks of existing code to
        make it more straightforward or to prepare it for implementing new
        features on top of it.  The primary example is the rework of ACPI
        resources handling from Jiang Liu, Thomas Gleixner and Lv Zheng with
        support for IOAPIC hotplug implemented on top of it, but there is
        quite a number of changes of this kind in the cpufreq core, ACPICA,
        ACPI EC driver, ACPI processor driver and the generic power domains
        core code too.
      
        The most active developer is Viresh Kumar with his cpufreq changes.
      
        Specifics:
      
         - Rework of the core ACPI resources parsing code to fix issues in it
           and make using resource offsets more convenient and consolidation
           of some resource-handing code in a couple of places that have grown
           analagous data structures and code to cover the the same gap in the
           core (Jiang Liu, Thomas Gleixner, Lv Zheng).
      
         - ACPI-based IOAPIC hotplug support on top of the resources handling
           rework (Jiang Liu, Yinghai Lu).
      
         - ACPICA update to upstream release 20150204 including an interrupt
           handling rework that allows drivers to install raw handlers for
           ACPI GPEs which then become entirely responsible for the given GPE
           and the ACPICA core code won't touch it (Lv Zheng, David E Box,
           Octavian Purdila).
      
         - ACPI EC driver rework to fix several concurrency issues and other
           problems related to events handling on top of the ACPICA's new
           support for raw GPE handlers (Lv Zheng).
      
         - New ACPI driver for AMD SoCs analogous to the LPSS (Low-Power
           Subsystem) driver for Intel chips (Ken Xue).
      
         - Two minor fixes of the ACPI LPSS driver (Heikki Krogerus, Jarkko
           Nikula).
      
         - Two new blacklist entries for machines (Samsung 730U3E/740U3E and
           510R) where the native backlight interface doesn't work correctly
           while the ACPI one does (Hans de Goede).
      
         - Rework of the ACPI processor driver's handling of idle states to
           make the code more straightforward and less bloated overall (Rafael
           J Wysocki).
      
         - Assorted minor fixes related to ACPI and SFI (Andreas Ruprecht,
           Andy Shevchenko, Hanjun Guo, Jan Beulich, Rafael J Wysocki, Yaowei
           Bai).
      
         - PCI core power management modification to avoid resuming (some)
           runtime-suspended devices during system suspend if they are in the
           right states already (Rafael J Wysocki).
      
         - New SFI-based cpufreq driver for Intel platforms using SFI
           (Srinidhi Kasagar).
      
         - cpufreq core fixes, cleanups and simplifications (Viresh Kumar,
           Doug Anderson, Wolfram Sang).
      
         - SkyLake CPU support and other updates for the intel_pstate driver
           (Kristen Carlson Accardi, Srinivas Pandruvada).
      
         - cpufreq-dt driver cleanup (Markus Elfring).
      
         - Init fix for the ARM big.LITTLE cpuidle driver (Sudeep Holla).
      
         - Generic power domains core code fixes and cleanups (Ulf Hansson).
      
         - Operating Performance Points (OPP) core code cleanups and kernel
           documentation update (Nishanth Menon).
      
         - New dabugfs interface to make the list of PM QoS constraints
           available to user space (Nishanth Menon).
      
         - New devfreq driver for Tegra Activity Monitor (Tomeu Vizoso).
      
         - New devfreq class (devfreq_event) to provide raw utilization data
           to devfreq governors (Chanwoo Choi).
      
         - Assorted minor fixes and cleanups related to power management
           (Andreas Ruprecht, Krzysztof Kozlowski, Rickard Strandqvist, Pavel
           Machek, Todd E Brandt, Wonhong Kwon).
      
         - turbostat updates (Len Brown) and cpupower Makefile improvement
           (Sriram Raghunathan)"
      
      * tag 'pm+acpi-3.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (151 commits)
        tools/power turbostat: relax dependency on APERF_MSR
        tools/power turbostat: relax dependency on invariant TSC
        Merge branch 'pci/host-generic' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci into acpi-resources
        tools/power turbostat: decode MSR_*_PERF_LIMIT_REASONS
        tools/power turbostat: relax dependency on root permission
        ACPI / video: Add disable_native_backlight quirk for Samsung 510R
        ACPI / PM: Remove unneeded nested #ifdef
        USB / PM: Remove unneeded #ifdef and associated dead code
        intel_pstate: provide option to only use intel_pstate with HWP
        ACPI / EC: Add GPE reference counting debugging messages
        ACPI / EC: Add query flushing support
        ACPI / EC: Refine command storm prevention support
        ACPI / EC: Add command flushing support.
        ACPI / EC: Introduce STARTED/STOPPED flags to replace BLOCKED flag
        ACPI: add AMD ACPI2Platform device support for x86 system
        ACPI / table: remove duplicate NULL check for the handler of acpi_table_parse()
        ACPI / EC: Update revision due to raw handler mode.
        ACPI / EC: Reduce ec_poll() by referencing the last register access timestamp.
        ACPI / EC: Fix several GPE handling issues by deploying ACPI_GPE_DISPATCH_RAW_HANDLER mode.
        ACPICA: Events: Enable APIs to allow interrupt/polling adaptive request based GPE handling model
        ...
      87291235
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · c08f8467
      Linus Torvalds authored
      Pull PCI changes from Bjorn Helgaas:
       "Enumeration
          - Move domain assignment from arm64 to generic code (Lorenzo Pieralisi)
          - ARM: Remove artificial dependency on pci_sys_data domain (Lorenzo Pieralisi)
          - ARM: Move to generic PCI domains (Lorenzo Pieralisi)
          - Generate uppercase hex for modalias var in uevent (Ricardo Ribalda Delgado)
          - Add and use generic config accessors on ARM, PowerPC (Rob Herring)
      
        Resource management
          - Free resources on failure in of_pci_get_host_bridge_resources() (Lorenzo Pieralisi)
          - Fix infinite loop with ROM image of size 0 (Michel Dänzer)
      
        PCI device hotplug
          - Handle surprise add even if surprise removal isn't supported (Bjorn Helgaas)
      
        Virtualization
          - Mark AMD/ATI VGA devices that don't reset on D3hot->D0 transition (Alex Williamson)
          - Add DMA alias quirk for Adaptec 3405 (Alex Williamson)
          - Add Wellsburg (X99) to Intel PCH root port ACS quirk (Alex Williamson)
          - Add ACS quirk for Emulex NICs (Vasundhara Volam)
      
        MSI
          - Fail MSI-X mappings if there's no space assigned to MSI-X BAR (Yijing Wang)
      
        Freescale Layerscape host bridge driver
          - Fix platform_no_drv_owner.cocci warnings (Julia Lawall)
      
        NVIDIA Tegra host bridge driver
          - Remove unnecessary tegra_pcie_fixup_bridge() (Lucas Stach)
      
        Renesas R-Car host bridge driver
          - Fix error handling of irq_of_parse_and_map() (Dmitry Torokhov)
      
        TI Keystone host bridge driver
          - Fix error handling of irq_of_parse_and_map() (Dmitry Torokhov)
          - Fix misspelling of current function in debug output (Julia Lawall)
      
        Xilinx AXI host bridge driver
          - Fix harmless format string warning (Arnd Bergmann)
      
        Miscellaneous
          - Use standard parsing functions for ASPM sysfs setters (Chris J Arges)
          - Add pci_device_to_OF_node() stub for !CONFIG_OF (Kevin Hao)
          - Delete unnecessary NULL pointer checks (Markus Elfring)
          - Add and use defines for PCIe Max_Read_Request_Size (Rafał Miłecki)
          - Include clk.h instead of clk-private.h (Stephen Boyd)"
      
      * tag 'pci-v3.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (48 commits)
        PCI: Add pci_device_to_OF_node() stub for !CONFIG_OF
        PCI: xilinx: Convert to use generic config accessors
        PCI: xgene: Convert to use generic config accessors
        PCI: tegra: Convert to use generic config accessors
        PCI: rcar: Convert to use generic config accessors
        PCI: generic: Convert to use generic config accessors
        powerpc/powermac: Convert PCI to use generic config accessors
        powerpc/fsl_pci: Convert PCI to use generic config accessors
        ARM: ks8695: Convert PCI to use generic config accessors
        ARM: sa1100: Convert PCI to use generic config accessors
        ARM: integrator: Convert PCI to use generic config accessors
        PCI: versatile: Add DT-based ARM Versatile PB PCIe host driver
        ARM: dts: versatile: add PCI controller binding
        of/pci: Free resources on failure in of_pci_get_host_bridge_resources()
        PCI: versatile: Add DT docs for ARM Versatile PB PCIe driver
        PCI: Fail MSI-X mappings if there's no space assigned to MSI-X BAR
        r8169: use PCI define for Max_Read_Request_Size
        [SCSI] esas2r: use PCI define for Max_Read_Request_Size
        tile: use PCI define for Max_Read_Request_Size
        rapidio/tsi721: use PCI define for Max_Read_Request_Size
        ...
      c08f8467
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.20-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · bdccc4ed
      Linus Torvalds authored
      Pull xen features and fixes from David Vrabel:
      
       - Reworked handling for foreign (grant mapped) pages to simplify the
         code, enable a number of additional use cases and fix a number of
         long-standing bugs.
      
       - Prefer the TSC over the Xen PV clock when dom0 (and the TSC is
         stable).
      
       - Assorted other cleanup and minor bug fixes.
      
      * tag 'stable/for-linus-3.20-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (25 commits)
        xen/manage: Fix USB interaction issues when resuming
        xenbus: Add proper handling of XS_ERROR from Xenbus for transactions.
        xen/gntdev: provide find_special_page VMA operation
        xen/gntdev: mark userspace PTEs as special on x86 PV guests
        xen-blkback: safely unmap grants in case they are still in use
        xen/gntdev: safely unmap grants in case they are still in use
        xen/gntdev: convert priv->lock to a mutex
        xen/grant-table: add a mechanism to safely unmap pages that are in use
        xen-netback: use foreign page information from the pages themselves
        xen: mark grant mapped pages as foreign
        xen/grant-table: add helpers for allocating pages
        x86/xen: require ballooned pages for grant maps
        xen: remove scratch frames for ballooned pages and m2p override
        xen/grant-table: pre-populate kernel unmap ops for xen_gnttab_unmap_refs()
        mm: add 'foreign' alias for the 'pinned' page flag
        mm: provide a find_special_page vma operation
        x86/xen: cleanup arch/x86/xen/mmu.c
        x86/xen: add some __init annotations in arch/x86/xen/mmu.c
        x86/xen: add some __init and static annotations in arch/x86/xen/setup.c
        x86/xen: use correct types for addresses in arch/x86/xen/setup.c
        ...
      bdccc4ed
    • Linus Torvalds's avatar
      Merge tag 'microblaze-3.20-rc1' of git://git.monstr.eu/linux-2.6-microblaze · 98368ab4
      Linus Torvalds authored
      Pull Microblaze pupdates from Michal Simek:
       - Remove various compilation errors
       - Various code cleanup patches
       - Add missing MB versions/architectures for autodetection
      
      * tag 'microblaze-3.20-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: Remove *.dtb files in make clean
        microblaze: whitespace fix
        microblaze/uaccess: fix sparse errors
        microblaze: intc: Reformat output
        microblaze: intc: Refactor DT sanity check
        microblaze: intc: Don't override error codes
        microblaze: Add target architecture
        microblaze: Add missing PVR version codes
        microblaze: Fix variable types to remove W=1 warning
        microblaze: Use unsigned type for limit comparison in cache.c
        microblaze: Use unsigned type for proper comparison in cpuinfo*.c
        microblaze: Use unsigned type for "for" loop because of comparison-kgdb.c
        microblaze: Change extern inline to static inline
        microblaze: Mark get_frame_size as static
        microblaze: Use unsigned return type in do_syscall_trace_enter
        microblaze: Declare microblaze_kgdb_break in header
        microblaze: Remove unused prom header from reset.c
        microblaze: Remove unused prom_parse.c
        microblaze: Wire-up execveat syscall
        microblaze: Use empty asm-generic/linkage.h
      98368ab4
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · ab0475df
      Linus Torvalds authored
      Pull m68k updates from Geert Uytterhoeven:
       "Summary:
      
        - switch to asm-generic/futex.h
      
        - various cleanups
      
        - defconfig updates"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k/defconfig: Enable Ethernet bridging
        m68k/defconfig: Enable Atari EtherNAT and EtherNEC Ethernet support
        m68k/defconfig: Enable automounting of devtmpfs at /dev
        m68k/defconfig: Enable early printk support
        m68k/defconfig: Enable test modules
        m68k/defconfig: Refresh defconfigs for v3.16-rc1--v3.19-rc2
        m68k/atari: Remove obsolete IRQ_TYPE_*
        sound: dmasound_atari: Remove obsolete IRQ_TYPE_SLOW
        video: atafb: Remove obsolete IRQ_TYPE_PRIO
        parport: parport_atari: Remove obsolete IRQ_TYPE_SLOW
        net: atarilance: Remove obsolete IRQ_TYPE_PRIO
        m68k/atari: Remove obsolete keyboard_tasklet scheduling
        m68k/mac: Fix scsi_type for Mac LC and similar models
        m68k: Switch to asm-generic/futex.h
        m68k/mvme147: config.c - Remove unused functions
        m68k/atari: atakeyb.c - Remove some unused functions
        m68k/mvme16x: rtc - Don't use module_init in non-modular code
      ab0475df
    • Michal Simek's avatar
      microblaze: Remove *.dtb files in make clean · a01d37d9
      Michal Simek authored
      dts/Makefile is called only for simpleImage target
      which is causing that *.dtb are not removed.
      This patch fix it.
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      a01d37d9
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-tools' · b5e82233
      Rafael J. Wysocki authored
      * pm-tools:
        tools/power turbostat: relax dependency on APERF_MSR
        tools/power turbostat: relax dependency on invariant TSC
        tools/power turbostat: decode MSR_*_PERF_LIMIT_REASONS
        tools/power turbostat: relax dependency on root permission
        cpupower Makefile change to help run the tool without 'make install'
      b5e82233
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq' · 7bc95d4e
      Rafael J. Wysocki authored
      * pm-cpufreq: (46 commits)
        intel_pstate: provide option to only use intel_pstate with HWP
        cpufreq-dt: Drop unnecessary check before cpufreq_cooling_unregister() invocation
        cpufreq: Create for_each_governor()
        cpufreq: Create for_each_policy()
        cpufreq: Drop cpufreq_disabled() check from cpufreq_cpu_{get|put}()
        cpufreq: Set cpufreq_cpu_data to NULL before putting kobject
        intel_pstate: honor user space min_perf_pct override on resume
        intel_pstate: respect cpufreq policy request
        intel_pstate: Add num_pstates to sysfs
        intel_pstate: expose turbo range to sysfs
        intel_pstate: Add support for SkyLake
        cpufreq: stats: drop unnecessary locking
        cpufreq: stats: don't update stats on false notifiers
        cpufreq: stats: don't update stats from show_trans_table()
        cpufreq: stats: time_in_state can't be NULL in cpufreq_stats_update()
        cpufreq: stats: create sysfs group once we are ready
        cpufreq: remove CPUFREQ_UPDATE_POLICY_CPU notifications
        cpufreq: stats: drop 'cpu' field of struct cpufreq_stats
        cpufreq: Remove (now) unused 'last_cpu' from struct cpufreq_policy
        cpufreq: stats: rename 'struct cpufreq_stats' objects as 'stats'
        ...
      7bc95d4e
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-sleep' and 'pm-runtime' · f5238689
      Rafael J. Wysocki authored
      * pm-sleep:
        PM / hibernate: exclude freed pages from allocated pages printout
        PM / sleep: export suspend_resume trace event
        PM / sleep: Mention async suspend in PM_TRACE documentation
        PM / hibernate: Remove unused function
      
      * pm-runtime:
        ACPI / PM: Remove unneeded nested #ifdef
        USB / PM: Remove unneeded #ifdef and associated dead code
      f5238689
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-domains' · f7cc61f0
      Rafael J. Wysocki authored
      * pm-domains:
        PM: Convert dev_pm_put_subsys_data() into a void function
        PM: Update function header for dev_pm_get_subsys_data()
        PM / Domains: Handle errors from genpd's ->attach_dev() callback
        PM / Domains: Re-order initialization of generic_pm_domain_data
        PM / Domains: Free pm_subsys_data in error path in __pm_genpd_add_device()
        PM / Domains: Eliminate the mutex for the generic_pm_domain_data
        PM / Domains: Don't check for an existing device when adding a new
        PM / Domains: Don't allow an existing generic_pm_domain_data
        PM / Domains: Remove reference counting for the generic_pm_domain_data
        PM / Domains: Rename __pm_genpd_alloc|free_dev_data()
        PM / Domains: Remove pm_genpd_dev_need_restore() API
      f7cc61f0
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-qos', 'pm-opp' and 'pm-devfreq' · 740b68ea
      Rafael J. Wysocki authored
      * pm-qos:
        PM / QoS: Use lockdep asserts to find missing hold of power.lock
        PM / QoS: Add debugfs support to view the list of constraints
      
      * pm-opp:
        PM / OPP: Assert RCU lock in exported functions
        PM / OPP: Update kernel documentation
        PM / OPP: Ensure consistent naming of static functions
        PM / OPP: export dev_pm_opp_get_notifier
      
      * pm-devfreq:
        PM / devfreq: event: Add documentation for exynos-ppmu devfreq-event driver
        devfreq: Fix build break of devfreq-event class
        PM / devfreq: event: Add devfreq_event class
        PM / devfreq: tegra: add devfreq driver for Tegra Activity Monitor
      740b68ea
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-pci' and 'pm-cpuidle' · 2f8c42f3
      Rafael J. Wysocki authored
      * pm-pci:
        PCI / PM: Avoid resuming PCI devices during system suspend
      
      * pm-cpuidle:
        drivers: cpuidle: Don't initialize big.LITTLE driver if MCPM is unavailable
      2f8c42f3
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-resources' · 8fbcf5ec
      Rafael J. Wysocki authored
      * acpi-resources: (23 commits)
        Merge branch 'pci/host-generic' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci into acpi-resources
        x86/irq, ACPI: Implement ACPI driver to support IOAPIC hotplug
        ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug
        x86/PCI: Refine the way to release PCI IRQ resources
        x86/PCI/ACPI: Use common ACPI resource interfaces to simplify implementation
        x86/PCI: Fix the range check for IO resources
        PCI: Use common resource list management code instead of private implementation
        resources: Move struct resource_list_entry from ACPI into resource core
        ACPI: Introduce helper function acpi_dev_filter_resource_type()
        ACPI: Add field offset to struct resource_list_entry
        ACPI: Translate resource into master side address for bridge window resources
        ACPI: Return translation offset when parsing ACPI address space resources
        ACPI: Enforce stricter checks for address space descriptors
        ACPI: Set flag IORESOURCE_UNSET for unassigned resources
        ACPI: Normalize return value of resource parser functions
        ACPI: Fix a bug in parsing ACPI Memory24 resource
        ACPI: Add prefetch decoding to the address space parser
        ACPI: Move the window flag logic to the combined parser
        ACPI: Unify the parsing of address_space and ext_address_space
        ACPI: Let the parser return false for disabled resources
        ...
      8fbcf5ec
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-processor' · d2320968
      Rafael J. Wysocki authored
      * acpi-processor:
        ACPI / cpuidle: Common callback routine for entering states
        ACPI / cpuidle: Merge acpi_idle_enter_c1() and acpi_idle_enter_simple()
        ACPI / cpuidle: Drop flags.bm_check tests from acpi_idle_enter_bm()
        ACPI / cpuidle: Clean up white space in a switch statement
        ACPI / cpuidle: Drop irrelevant comment from acpi_idle_enter_simple()
        ACPI / cpuidle: Clean up fallback to C1 checks
        ACPI / cpuidle: Drop unnecessary calls from ->enter callback routines
        ACPI / cpuidle: Drop unnecessary calls from acpi_idle_do_entry()
      d2320968
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-doc', 'acpi-pm', 'acpi-pcc' and 'acpi-tables' · ca45c879
      Rafael J. Wysocki authored
      * acpi-doc:
        MAINTAINERS / ACPI: add the necessary '/' according to entry rules
        ACPI / Documentation: add a missing '='
      
      * acpi-pm:
        ACPI / sleep: mark acpi_sleep_dmi_check() __init
      
      * acpi-pcc:
        ACPI / PCC: Use pr_debug() for debug messages in pcc_init()
      
      * acpi-tables:
        ACPI / table: remove duplicate NULL check for the handler of acpi_table_parse()
      ca45c879
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-video' and 'acpi-soc' · 99e4d89a
      Rafael J. Wysocki authored
      * acpi-video:
        ACPI / video: Add disable_native_backlight quirk for Samsung 510R
        ACPI / video: Add disable_native_backlight quirk for Samsung 730U3E/740U3E
      
      * acpi-soc:
        ACPI: add AMD ACPI2Platform device support for x86 system
        ACPI / LPSS: Remove non-existing clock control from Intel Lynxpoint I2C
        ACPI / LPSS: check the result of ioremap()
      99e4d89a
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-ec' · 716bc413
      Rafael J. Wysocki authored
      * acpi-ec:
        ACPI / EC: Add GPE reference counting debugging messages
        ACPI / EC: Add query flushing support
        ACPI / EC: Refine command storm prevention support
        ACPI / EC: Add command flushing support.
        ACPI / EC: Introduce STARTED/STOPPED flags to replace BLOCKED flag
        ACPI / EC: Update revision due to raw handler mode.
        ACPI / EC: Reduce ec_poll() by referencing the last register access timestamp.
        ACPI / EC: Fix several GPE handling issues by deploying ACPI_GPE_DISPATCH_RAW_HANDLER mode.
        ACPI / EC: Cleanup QR_EC related code
        ACPI / EC: Fix issues related to the SCI_EVT handling
        ACPI / EC: Fix a code path that global lock is not held
        ACPI / EC: Fix returning values in acpi_ec_sync_query()
        ACPI / EC: Add reference counting for query handlers
        ACPI / EC: Cleanup transaction wakeup code
      716bc413
    • Rafael J. Wysocki's avatar
      Merge branch 'acpica' · 55c39fc2
      Rafael J. Wysocki authored
      * acpica:
        ACPICA: Events: Enable APIs to allow interrupt/polling adaptive request based GPE handling model
        ACPICA: Events: Introduce acpi_set_gpe()/acpi_finish_gpe() to reduce divergences
        ACPICA: Events: Introduce ACPI_GPE_DISPATCH_RAW_HANDLER to fix 2 issues for the current GPE APIs
        ACPICA: Update version to 20150204
        ACPICA: Update Copyright headers to 2015
        ACPICA: Hardware: Cast GPE enable_mask before storing
        ACPICA: Events: Cleanup GPE dispatcher type obtaining code
        ACPICA: Events: Cleanup to move acpi_gbl_global_event_handler invocation out of acpi_ev_gpe_dispatch()
        ACPICA: Events: Cleanup of resetting the GPE handler to NULL before removing
        ACPICA: Events: Fix uninitialized variable
        ACPICA: Events: Remove acpi_ev_valid_gpe_event() due to current restriction
        ACPICA: Events: Remove duplicated sanity check in acpi_ev_enable_gpe()
        ACPICA: Events: Back port "ACPICA: Save current masks of enabled GPEs after enable register writes"
        ACPICA: Resources: Provide common part for struct acpi_resource_address structures.
        ACPI: Introduce acpi_unload_parent_table() usages in Linux kernel
        ACPICA: take ACPI_MTX_INTERPRETER in acpi_unload_table_id()
      55c39fc2
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 3e8c04eb
      Linus Torvalds authored
      Pull libata changes from Tejun Heo:
       "Mostly driver-specific changes.  Nothing too noteworthy.
      
        This pull request contains three merges from for-3.19-fixes.  The
        first two are to pull ahci_xgene and sata_dwc_460ex fix commits which
        are depended upon by later changes.  The last one is to pull in a fix
        patch which missed the v3.19-rc window"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (24 commits)
        ahci_xgene: Fix the dma state machine lockup for the ATA_CMD_SMART PIO mode command.
        ata: libahci: Use of_platform_device_create only if supported
        sata_mv: Delete unnecessary checks before the function call "phy_power_off"
        ata: Delete unnecessary checks before the function call "pci_dev_put"
        ata: pata_platform: fix owner module reference mismatch for scsi host
        ata: ahci_platform: fix owner module reference mismatch for scsi host
        pata_pdc2027x: Use 64-bit timekeeping
        ata: libahci: Fix devres cleanup on failure
        ata: libahci: Allow using multiple regulators
        Documentation: bindings: Add the regulator property to the sub-nodes AHCI bindings
        ata: libahci: Clean-up the ahci_platform_en/disable_phys functions
        sata_rcar: extend PM methods
        sata_dwc_460ex: disable compilation on ARM and ARM64
        ata: libata-core: Remove unused function
        sata_dwc_460ex: convert to devm_kzalloc in ->probe()
        sata_dwc_460ex: remove extra message
        sata_dwc_460ex: use np local variable in ->probe()
        sata_dwc_460ex: fix most of the sparse warnings
        sata_dwc_460ex: enable COMPILE_TEST for the driver
        sata_dwc_460ex: remove redundant dev_set_drvdata
        ...
      3e8c04eb
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 44dbf058
      Linus Torvalds authored
      Pull workqueue changes from Tejun Heo:
       "One cosmetic cleanup patch"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue.h: remove loops of single statement macros
      44dbf058
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 15763db1
      Linus Torvalds authored
      Pull cgroup changes from Tejun Heo:
       "Three mostly trivial patches.  The biggest change is that blkio is now
        initialized before memcg which will be needed to make memcg and blkcg
        cooperate on writeback IOs"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: add dummy css_put() for !CONFIG_CGROUPS
        cgroup: reorder SUBSYS(blkio) in cgroup_subsys.h
        Update of Documentation/cgroups/00-INDEX
      15763db1
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · c2189e3a
      Linus Torvalds authored
      Pull percpu changes from Tejun Heo:
       "Nothing too interesting.  One cleanup patch and another to add a
        trivial state check function"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu_ref: implement percpu_ref_is_dying()
        percpu_ref: remove unnecessary ACCESS_ONCE() in percpu_ref_tryget_live()
      c2189e3a
    • Linus Torvalds's avatar
      Merge tag 'edac_for_3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · ed824a62
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
      
       - a new synopsys_edac.c driver for the Synopsys DDR controller, from
         Punnaiah Choudary Kalluri.
      
       - minor fixes/cleanups all around
      
       - Mauro and I are adding the repo URLs to MAINTAINERS since people
         asked for trees to base upcoming work on.
      
      * tag 'edac_for_3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC: Add repo URLs to MAINTAINERS
        EDAC, mv64x60_edac: Fix an error code in probe()
        EDAC: edac_mc_sysfs: Make stuff static
        EDAC: Fix the leak of mci->bus->name when bus_register fails
        edac: i5100_edac: Remove unused i5100_recmema_dm_buf_id
        EDAC, synps: Add EDAC support for zynq ddr ecc controller
        mpc85xx_edac: Fix a typo in comments
        EDAC, mce_amd_inj: Fix sparse non static symbol warning
      ed824a62
    • Linus Torvalds's avatar
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e07e0d4c
      Linus Torvalds authored
      Pull x86 RAS update from Ingo Molnar:
       "The changes in this cycle were:
      
         - allow mmcfg access to APEI error injection handlers
      
         - improve MCE error messages
      
         - smaller cleanups"
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, mce: Fix sparse errors
        x86, mce: Improve timeout error messages
        ACPI, EINJ: Enhance error injection tolerance level
      e07e0d4c
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 57d36294
      Linus Torvalds authored
      Pull x86 mm cleanups from Ingo Molnar:
       "Two cleanups: simplify parse_setup_data() and sanitize_e820_map()
        usage"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, e820: Clean up sanitize_e820_map() users
        x86, setup: Let early_memremap() handle page alignment
      57d36294
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a8f76842
      Linus Torvalds authored
      Pull x86 SoC updates from Ingo Molnar:
       "Various Intel Atom SoC updates (mostly to enhance debuggability), plus
        an apb_timer cleanup"
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: pmc_atom: Expose contents of PSS
        x86: pmc_atom: Clean up init function
        x86: pmc-atom: Remove unused macro
        x86: pmc_atom: don%27t check for NULL twice
        x86: pmc-atom: Assign debugfs node as soon as possible
        x86/platform: Remove unused function from apb_timer.c
      a8f76842
    • Linus Torvalds's avatar
      Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c93eceda
      Linus Torvalds authored
      Pull x86 fpu updates from Ingo Molnar:
       "Initial round of kernel_fpu_begin/end cleanups from Oleg Nesterov,
        plus a cleanup from Borislav Petkov"
      
      * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, fpu: Fix math_state_restore() race with kernel_fpu_begin()
        x86, fpu: Don't abuse has_fpu in __kernel_fpu_begin/end()
        x86, fpu: Introduce per-cpu in_kernel_fpu state
        x86/fpu: Use a symbolic name for asm operand
      c93eceda
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 072bc448
      Linus Torvalds authored
      Pull EFI updates from Ingo Molnar:
       "Main changes:
      
         - Move efivarfs from the misc filesystem section to pseudo filesystem
      
         - Expose firmware platform size in sysfs
      
         - Improve robustness of get_memory_map() by removing assumptions on
           the size of efi_memory_desc_t.
      
        - various cleanups and fixes
      
        The biggest risk is the get_memory_map() change, which changes the way
        that both the arm64 and x86 EFI boot stub build the early memory map.
        There are no known regressions with it at the moment, BYMMV"
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        efi: Don't look for chosen@0 node on DT platforms
        firmware: efi: Remove unneeded guid unparse
        efi/libstub: Call get_memory_map() to obtain map and desc sizes
        efi: Small leak on error in runtime map code
        efi: rtc-efi: Mark UIE as unsupported
        arm64/efi: efistub: Apply __init annotation
        efi: Expose underlying UEFI firmware platform size to userland
        efi: Rename efi_guid_unparse to efi_guid_to_str
        efi: Update the URLs for efibootmgr
        fs: Make efivarfs a pseudo filesystem, built by default with EFI
      072bc448
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 80f33a5f
      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/rtc: Remove duplicate const specifier
        x86, early_serial_console: Remove unnecessary check
        x86, early_serial_console: Remove unused macro XMTRDY
        x86, setup: Rename BOOT_ISDIGIT_H to BOOT_CTYPE_H
        x86, CPU: Fix trivial printk formatting issues with dmesg
      80f33a5f
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7453311d
      Linus Torvalds authored
      Pull x86 asm changes from Ingo Molnar:
       "The main changes in this cycle were the x86/entry and sysret
        enhancements from Andy Lutomirski, see merge commits 772a9aca and
        b57c0b51 for details"
      
      [ Exectutive summary: IST exceptions that interrupt user space will run
        on the regular kernel stack instead of the IST stack.  Which
        simplifies things particularly on return to user space.
      
        The sysret cleanup ends up simplifying the logic on when we can use
        sysret vs when we have to use iret.                - Linus ]
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86_64, entry: Remove the syscall exit audit and schedule optimizations
        x86_64, entry: Use sysret to return to userspace when possible
        x86, traps: Fix ist_enter from userspace
        x86, vdso: teach 'make clean' remove vdso64 binaries
        x86_64 entry: Fix RCX for ptraced syscalls
        x86: entry_64.S: fold SAVE_ARGS_IRQ macro into its sole user
        x86: ia32entry.S: fix wrong symbolic constant usage: R11->ARGOFFSET
        x86: entry_64.S: delete unused code
        x86, mce: Get rid of TIF_MCE_NOTIFY and associated mce tricks
        x86, traps: Add ist_begin_non_atomic and ist_end_non_atomic
        x86: Clean up current_stack_pointer
        x86, traps: Track entry into and exit from IST context
        x86, entry: Switch stacks on a paranoid entry from userspace
      7453311d
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9d43bade
      Linus Torvalds authored
      Pull x86 APIC updates from Ingo Molnar:
       "Continued fallout of the conversion of the x86 IRQ code to the
        hierarchical irqdomain framework: more cleanups, simplifications,
        memory allocation behavior enhancements, mainly in the interrupt
        remapping and APIC code"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        x86, init: Fix UP boot regression on x86_64
        iommu/amd: Fix irq remapping detection logic
        x86/acpi: Make acpi_[un]register_gsi_ioapic() depend on CONFIG_X86_LOCAL_APIC
        x86: Consolidate boot cpu timer setup
        x86/apic: Reuse apic_bsp_setup() for UP APIC setup
        x86/smpboot: Sanitize uniprocessor init
        x86/smpboot: Move apic init code to apic.c
        init: Get rid of x86isms
        x86/apic: Move apic_init_uniprocessor code
        x86/smpboot: Cleanup ioapic handling
        x86/apic: Sanitize ioapic handling
        x86/ioapic: Add proper checks to setp/enable_IO_APIC()
        x86/ioapic: Provide stub functions for IOAPIC%3Dn
        x86/smpboot: Move smpboot inlines to code
        x86/x2apic: Use state information for disable
        x86/x2apic: Split enable and setup function
        x86/x2apic: Disable x2apic from nox2apic setup
        x86/x2apic: Add proper state tracking
        x86/x2apic: Clarify remapping mode for x2apic enablement
        x86/x2apic: Move code in conditional region
        ...
      9d43bade
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0ba97bc4
      Linus Torvalds authored
      Pull timer updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - rework hrtimer expiry calculation in hrtimer_interrupt(): the
           previous code had a subtle bug where expiry caching would miss an
           expiry, resulting in occasional bogus (late) expiry of hrtimers.
      
         - continuing Y2038 fixes
      
         - ktime division optimization
      
         - misc smaller fixes and cleanups"
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        hrtimer: Make __hrtimer_get_next_event() static
        rtc: Convert rtc_set_ntp_time() to use timespec64
        rtc: Remove redundant rtc_valid_tm() from rtc_hctosys()
        rtc: Modify rtc_hctosys() to address y2038 issues
        rtc: Update rtc-dev to use y2038-safe time interfaces
        rtc: Update interface.c to use y2038-safe time interfaces
        time: Expose get_monotonic_boottime64 for in-kernel use
        time: Expose getboottime64 for in-kernel uses
        ktime: Optimize ktime_divns for constant divisors
        hrtimer: Prevent stale expiry time in hrtimer_interrupt()
        ktime.h: Introduce ktime_ms_delta
      0ba97bc4
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5b9b28a6
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The main scheduler changes in this cycle were:
      
         - various sched/deadline fixes and enhancements
      
         - rescheduling latency fixes/cleanups
      
         - rework the rq->clock code to be more consistent and more robust.
      
         - minor micro-optimizations
      
         - ->avg.decay_count fixes
      
         - add a stack overflow check to might_sleep()
      
         - idle-poll handler fix, possibly resulting in power savings
      
         - misc smaller updates and fixes"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/Documentation: Remove unneeded word
        sched/wait: Introduce wait_on_bit_timeout()
        sched: Pull resched loop to __schedule() callers
        sched/deadline: Remove cpu_active_mask from cpudl_find()
        sched: Fix hrtick_start() on UP
        sched/deadline: Avoid pointless __setscheduler()
        sched/deadline: Fix stale yield state
        sched/deadline: Fix hrtick for a non-leftmost task
        sched/deadline: Modify cpudl::free_cpus to reflect rd->online
        sched/idle: Add missing checks to the exit condition of cpu_idle_poll()
        sched: Fix missing preemption opportunity
        sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target
        sched/debug: Print rq->clock_task
        sched/core: Rework rq->clock update skips
        sched/core: Validate rq_clock*() serialization
        sched/core: Remove check of p->sched_class
        sched/fair: Fix sched_entity::avg::decay_count initialization
        sched/debug: Fix potential call to __ffs(0) in sched_show_task()
        sched/debug: Check for stack overflow in ___might_sleep()
        sched/fair: Fix the dealing with decay_count in __synchronize_entity_decay()
      5b9b28a6
  2. 09 Feb, 2015 5 commits
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a4cbbf54
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Kernel side changes:
      
         - AMD range breakpoints support:
      
           Extend breakpoint tools and core to support address range through
           perf event with initial backend support for AMD extended
           breakpoints.
      
           The syntax is:
      
               perf record -e mem:addr/len:type
      
           For example set write breakpoint from 0x1000 to 0x1200 (0x1000 + 512)
      
               perf record -e mem:0x1000/512:w
      
         - event throttling/rotating fixes
      
         - various event group handling fixes, cleanups and general paranoia
           code to be more robust against bugs in the future.
      
          - kernel stack overhead fixes
      
        User-visible tooling side changes:
      
         - Show precise number of samples in at the end of a 'record' session,
           if processing build ids, since we will then traverse the whole
           perf.data file and see all the PERF_RECORD_SAMPLE records,
           otherwise stop showing the previous off-base heuristicly counted
           number of "samples" (Namhyung Kim).
      
         - Support to read compressed module from build-id cache (Namhyung
           Kim)
      
         - Enable sampling loads and stores simultaneously in 'perf mem'
           (Stephane Eranian)
      
         - 'perf diff' output improvements (Namhyung Kim)
      
         - Fix error reporting for evsel pgfault constructor (Arnaldo Carvalho
           de Melo)
      
        Tooling side infrastructure changes:
      
         - Cache eh/debug frame offset for dwarf unwind (Namhyung Kim)
      
         - Support parsing parameterized events (Cody P Schafer)
      
         - Add support for IP address formats in libtraceevent (David Ahern)
      
        Plus other misc fixes"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (48 commits)
        perf: Decouple unthrottling and rotating
        perf: Drop module reference on event init failure
        perf: Use POLLIN instead of POLL_IN for perf poll data in flag
        perf: Fix put_event() ctx lock
        perf: Fix move_group() order
        perf: Fix event->ctx locking
        perf: Add a bit of paranoia
        perf symbols: Convert lseek + read to pread
        perf tools: Use perf_data_file__fd() consistently
        perf symbols: Support to read compressed module from build-id cache
        perf evsel: Set attr.task bit for a tracking event
        perf header: Set header version correctly
        perf record: Show precise number of samples
        perf tools: Do not use __perf_session__process_events() directly
        perf callchain: Cache eh/debug frame offset for dwarf unwind
        perf tools: Provide stub for missing pthread_attr_setaffinity_np
        perf evsel: Don't rely on malloc working for sz 0
        tools lib traceevent: Add support for IP address formats
        perf ui/tui: Show fatal error message only if exists
        perf tests: Fix typo in sample-parsing.c
        ...
      a4cbbf54
    • Rafael J. Wysocki's avatar
      Merge branch 'turbostat' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux into pm-tools · 994b7f10
      Rafael J. Wysocki authored
      Pull turbostate changes for v3.20 from Len Brown.
      
      * 'turbostat' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
        tools/power turbostat: relax dependency on APERF_MSR
        tools/power turbostat: relax dependency on invariant TSC
        tools/power turbostat: decode MSR_*_PERF_LIMIT_REASONS
        tools/power turbostat: relax dependency on root permission
      994b7f10
    • Len Brown's avatar
      tools/power turbostat: relax dependency on APERF_MSR · a729617c
      Len Brown authored
      While turbostat is significantly less useful on systems
      with no APERF_MSR, it seems more friendly
      to run on such systems and report what we can,
      rather than refusing to run.
      
      Update man page to reflect recent changes.
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      a729617c
    • Len Brown's avatar
      tools/power turbostat: relax dependency on invariant TSC · d7899447
      Len Brown authored
      Turbostat can be useful on systems that do not support invariant TSC,
      so allow it to run on those systgems.
      
      All arithmetic in turbostat using the TSC value is per-processsor,
      so it does not depend on the TSC values being in sync acrosss processors.
      
      Turbostat uses gettimeofday() for the measurement interval
      rather than using the TSC directly, so that key metric
      is also immune from variable TSC.
      
      Turbostat prints a TSC sanity check column:
      
      TSC_MHz = TSC_delta/interval
      
      If this column is constant and is close to the processor
      base frequency, then the TSC is behaving properly.
      
      The other key turbostat columns are calculated this way:
      
      Avg_Mhz = APERF_delta/interval
      
      %Busy = MPERF_delta/TSC_delta
      
      Bzy_MHz = TSC_delta/APERF_delta/MPERF_delta/interval
      
      Tested on Core2 and Core2-Xeon, and so this patch includes
      a few other changes to remove the assumption that target
      systems are Nehalem and newer.
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      d7899447
    • Linus Torvalds's avatar
      Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8308756f
      Linus Torvalds authored
      Pull core locking updates from Ingo Molnar:
       "The main changes are:
      
         - mutex, completions and rtmutex micro-optimizations
         - lock debugging fix
         - various cleanups in the MCS and the futex code"
      
      * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/rtmutex: Optimize setting task running after being blocked
        locking/rwsem: Use task->state helpers
        sched/completion: Add lock-free checking of the blocking case
        sched/completion: Remove unnecessary ->wait.lock serialization when reading completion state
        locking/mutex: Explicitly mark task as running after wakeup
        futex: Fix argument handling in futex_lock_pi() calls
        doc: Fix misnamed FUTEX_CMP_REQUEUE_PI op constants
        locking/Documentation: Update code path
        softirq/preempt: Add missing current->preempt_disable_ip update
        locking/osq: No need for load/acquire when acquire-polling
        locking/mcs: Better differentiate between MCS variants
        locking/mutex: Introduce ww_mutex_set_context_slowpath()
        locking/mutex: Move MCS related comments to proper location
        locking/mutex: Checking the stamp is WW only
      8308756f