1. 27 May, 2016 16 commits
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v4.7-1' of... · 1e8143db
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v4.7-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
      
      Pull x86 platform driver updates from Darren Hart:
       "Mostly minor updates and cleanups.  One new power management
        controller driver for Intel Core SoCs.
      
        platform/x86:
         - Add PMC Driver for Intel Core SoC
      
        dell-rbtn:
         - Ignore ACPI notifications if device is suspended
      
        thinkpad_acpi:
         - save kbdlight state on suspend and restore it on resume
      
        intel_menlow:
         - reduce code duplication
      
        asus-wmi:
         - provide access to ALS control
      
        ideapad-laptop:
         - add a new WMI string for ESC key
      
        surfacepro3_button:
         - Add a warning when switching to tablet mode
      
        sony-laptop:
         - Avoid oops on module unload for older laptops
      
        intel_telemetry:
         - Constify telemetry_core_ops structures
      
        fujitsu-laptop:
         - Use IS_ENABLED() instead of checking for built-in or module
      
        asus-laptop:
         - correct error handling in sysfs_acpi_set
         - remove redundant initializers
         - correct error handling in asus_read_brightness()
      
        fujitsu-laptop:
         - Support radio LED"
      
      * tag 'platform-drivers-x86-v4.7-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86:
        platform/x86: Add PMC Driver for Intel Core SoC
        dell-rbtn: Ignore ACPI notifications if device is suspended
        thinkpad_acpi: save kbdlight state on suspend and restore it on resume
        intel_menlow: reduce code duplication
        asus-wmi: provide access to ALS control
        ideapad-laptop: add a new WMI string for ESC key
        surfacepro3_button: Add a warning when switching to tablet mode
        sony-laptop: Avoid oops on module unload for older laptops
        intel_telemetry: Constify telemetry_core_ops structures
        fujitsu-laptop: Use IS_ENABLED() instead of checking for built-in or module
        asus-laptop: correct error handling in sysfs_acpi_set
        asus-laptop: remove redundant initializers
        asus-laptop: correct error handling in asus_read_brightness()
        fujitsu-laptop: Support radio LED
      1e8143db
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/intel-iommu · 25662785
      Linus Torvalds authored
      Pull intel IOMMU updates from David Woodhouse:
       "This patchset improves the scalability of the Intel IOMMU code by
        resolving two spinlock bottlenecks and eliminating the linearity of
        the IOVA allocator, yielding up to ~5x performance improvement and
        approaching 'iommu=off' performance"
      
      * git://git.infradead.org/intel-iommu:
        iommu/vt-d: Use per-cpu IOVA caching
        iommu/iova: introduce per-cpu caching to iova allocation
        iommu/vt-d: change intel-iommu to use IOVA frame numbers
        iommu/vt-d: avoid dev iotlb logic for domains with no dev iotlbs
        iommu/vt-d: only unmap mapped entries
        iommu/vt-d: correct flush_unmaps pfn usage
        iommu/vt-d: per-cpu deferred invalidation queues
        iommu/vt-d: refactoring of deferred flush entries
      25662785
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · e28e909c
      Linus Torvalds authored
      Pull second batch of KVM updates from Radim Krčmář:
       "General:
      
         - move kvm_stat tool from QEMU repo into tools/kvm/kvm_stat (kvm_stat
           had nothing to do with QEMU in the first place -- the tool only
           interprets debugfs)
      
         - expose per-vm statistics in debugfs and support them in kvm_stat
           (KVM always collected per-vm statistics, but they were summarised
           into global statistics)
      
        x86:
      
         - fix dynamic APICv (VMX was improperly configured and a guest could
           access host's APIC MSRs, CVE-2016-4440)
      
         - minor fixes
      
        ARM changes from Christoffer Dall:
      
         - new vgic reimplementation of our horribly broken legacy vgic
           implementation.  The two implementations will live side-by-side
           (with the new being the configured default) for one kernel release
           and then we'll remove the legacy one.
      
         - fix for a non-critical issue with virtual abort injection to guests"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (70 commits)
        tools: kvm_stat: Add comments
        tools: kvm_stat: Introduce pid monitoring
        KVM: Create debugfs dir and stat files for each VM
        MAINTAINERS: Add kvm tools
        tools: kvm_stat: Powerpc related fixes
        tools: Add kvm_stat man page
        tools: Add kvm_stat vm monitor script
        kvm:vmx: more complete state update on APICv on/off
        KVM: SVM: Add more SVM_EXIT_REASONS
        KVM: Unify traced vector format
        svm: bitwise vs logical op typo
        KVM: arm/arm64: vgic-new: Synchronize changes to active state
        KVM: arm/arm64: vgic-new: enable build
        KVM: arm/arm64: vgic-new: implement mapped IRQ handling
        KVM: arm/arm64: vgic-new: Wire up irqfd injection
        KVM: arm/arm64: vgic-new: Add vgic_v2/v3_enable
        KVM: arm/arm64: vgic-new: vgic_init: implement map_resources
        KVM: arm/arm64: vgic-new: vgic_init: implement vgic_init
        KVM: arm/arm64: vgic-new: vgic_init: implement vgic_create
        KVM: arm/arm64: vgic-new: vgic_init: implement kvm_vgic_hyp_init
        ...
      e28e909c
    • Rajneesh Bhardwaj's avatar
      platform/x86: Add PMC Driver for Intel Core SoC · b740d2e9
      Rajneesh Bhardwaj authored
      This patch adds the Power Management Controller driver as a PCI driver
      for Intel Core SoC architecture.
      
      This driver can utilize debugging capabilities and supported features
      as exposed by the Power Management Controller.
      
      Please refer to the below specification for more details on PMC features.
      http://www.intel.in/content/www/in/en/chipsets/100-series-chipset-datasheet-vol-2.html
      
      The current version of this driver exposes SLP_S0_RESIDENCY counter.
      This counter can be used for detecting fragile SLP_S0 signal related
      failures and take corrective actions when PCH SLP_S0 signal is not
      asserted after kernel freeze as part of suspend to idle flow
      (echo freeze > /sys/power/state).
      
      Intel Platform Controller Hub (PCH) asserts SLP_S0 signal when it
      detects favorable conditions to enter its low power mode. As a
      pre-requisite the SoC should be in deepest possible Package C-State
      and devices should be in low power mode. For example, on Skylake SoC
      the deepest Package C-State is Package C10 or PC10. Suspend to idle
      flow generally leads to PC10 state but PC10 state may not be sufficient
      for realizing the platform wide power potential which SLP_S0 signal
      assertion can provide.
      
      SLP_S0 signal is often connected to the Embedded Controller (EC) and the
      Power Management IC (PMIC) for other platform power management related
      optimizations.
      
      In general, SLP_S0 assertion == PC10 + PCH low power mode + ModPhy Lanes
      power gated + PLL Idle.
      
      As part of this driver, a mechanism to read the SLP_S0_RESIDENCY is exposed
      as an API and also debugfs features are added to indicate SLP_S0 signal
      assertion residency in microseconds.
      
      echo freeze > /sys/power/state
      wake the system
      cat /sys/kernel/debug/pmc_core/slp_s0_residency_usec
      Signed-off-by: default avatarRajneesh Bhardwaj <rajneesh.bhardwaj@intel.com>
      Signed-off-by: default avatarVishwanath Somayaji <vishwanath.somayaji@intel.com>
      Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      b740d2e9
    • Gabriele Mazzotta's avatar
      dell-rbtn: Ignore ACPI notifications if device is suspended · ff865123
      Gabriele Mazzotta authored
      Some BIOSes unconditionally send an ACPI notification to RBTN when the
      system is resuming from suspend. This makes dell-rbtn send an input
      event to userspace as if a function key was pressed. Prevent this by
      ignoring all the notifications received while the device is suspended.
      
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=106031Signed-off-by: default avatarGabriele Mazzotta <gabriele.mzt@gmail.com>
      Tested-by: default avatarAlex Hung <alex.hung@canonical.com>
      Reviewed-by: default avatarPali Rohár <pali.rohar@gmail.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      ff865123
    • Marco Trevisan (Treviño)'s avatar
      thinkpad_acpi: save kbdlight state on suspend and restore it on resume · afcedebc
      Marco Trevisan (Treviño) authored
      Override default LED class suspend/resume handles, by keeping track of
      the brightness level before suspending so that it can be automatically
      restored on resume by calling default resume handler.
      Signed-off-by: default avatarMarco Trevisan (Treviño) <mail@3v1n0.net>
      Acked-by: default avatarHenrique de Moraes Holschuh <hmh@hmh.eng.br>
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      afcedebc
    • Rasmus Villemoes's avatar
      intel_menlow: reduce code duplication · a29ccf6f
      Rasmus Villemoes authored
      aux0_show and aux1_show consists of almost identical code. Pull that
      into a common helper and make them thin wrappers. Similarly for
      _store.
      Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      a29ccf6f
    • Oleksij Rempel's avatar
      asus-wmi: provide access to ALS control · aca234f6
      Oleksij Rempel authored
      Asus Zenbook ux31a is providing ACPI0008 interface for ALS
      (Ambient Light Sensor), which is accessible for OS => Win 7.
      This sensor can be used with iio/acpi-als driver.
      Since it is disabled by default, we should use asus-wmi
      interface to enable it.
      Signed-off-by: default avatarOleksij Rempel <linux@rempel-privat.de>
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      aca234f6
    • Arnd Bergmann's avatar
      ideapad-laptop: add a new WMI string for ESC key · 2d98e0b9
      Arnd Bergmann authored
      My patch to the ideapad-laptop driver to get the ESC key working on the
      Yoga 1170 (Yoga 3) failed to do the same for the following model, the
      Lenovo Yoga 700.
      
      Denis Gordienko managed to get it working by adding another GUID for the
      new WMI interface. I have adapted his patch to normal coding style
      and simplified it a bit for inclusion, but this patch is currently
      untested.
      
      Link: https://forums.lenovo.com/t5/Lenovo-Yoga-Series-Notebooks/YOGA-3-14-How-to-reclaim-my-Esc-key-and-permanently-disable/m-p/3317499Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Tested-by: default avatarDenis Gordienko <denis.gordienko.mail@gmail.com>
      [dvhart: Whitespace cleanup, static const char *const array declaration]
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      2d98e0b9
    • Andy Shevchenko's avatar
      surfacepro3_button: Add a warning when switching to tablet mode · e27ffe7e
      Andy Shevchenko authored
      Microsoft Surface Book has a tablet mode button. Print another message
      once on this event instead of repeating "Unknown event...".
      
      Unfortunately, proper support involves the _DSM method, which is not a
      discoverable interface. Just print a warning for now.
      Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: default avatarDarren Hart <dvhart@linux.intel.com>
      e27ffe7e
    • Linus Torvalds's avatar
      Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · dc03c0f9
      Linus Torvalds authored
      Pull misc kbuild updates from Michal Marek:
       "This is the non-critical part of kbuild:
      
         - Coccinelle fixes, one semantic patch less in this round [Vaishali
           Thakkar, Wolfram Sang, Kees Cook]
      
         - rpm-pkg support for (open)SUSE's update-bootloader [Jiří Kosian]
      
         - rpm-pkg restored support for $RPMOPTS [Srinivas Pandruvada]
      
         - deb-pkg fixes for the linux-headers package [Bjørn Mork, Azriel
           Samson]"
      
      * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        coccicheck: Fix missing 0 index in kill loop
        scripts/package/Makefile: rpmbuild add support of RPMOPTS
        builddeb: fix missing headers in linux-headers package
        builddeb: include objtool binary in headers package
        kbuild/mkspec: support 'update-bootloader'-based systems
        scripts: coccinelle: remove check to move constants to right
        Coccinelle: setup_timer: Add space in front of parentheses
      dc03c0f9
    • Linus Torvalds's avatar
      Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · f429d355
      Linus Torvalds authored
      Pull kconfig update from Michal Marek:
      
       - fix for behavior of tristate choice items and fix for documentation
         of existing kconfig behavior [Dirk Gouders]
      
       - more helpful "unexpected data" kconfig warning [Paul Bolle]
      
      * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kconfig/symbol.c: handle choice_values that depend on 'm' symbols
        kconfig-language: elaborate on the type of a choice
        kconfig-language: fix comment on dependency-generated menu structures.
        kconfig: add unexpected data itself to warning
      f429d355
    • Linus Torvalds's avatar
      Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 5b26fc88
      Linus Torvalds authored
      Pull kbuild updates from Michal Marek:
      
       - new option CONFIG_TRIM_UNUSED_KSYMS which does a two-pass build and
         unexports symbols which are not used in the current config [Nicolas
         Pitre]
      
       - several kbuild rule cleanups [Masahiro Yamada]
      
       - warning option adjustments for gcov etc [Arnd Bergmann]
      
       - a few more small fixes
      
      * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: (31 commits)
        kbuild: move -Wunused-const-variable to W=1 warning level
        kbuild: fix if_change and friends to consider argument order
        kbuild: fix adjust_autoksyms.sh for modules that need only one symbol
        kbuild: fix ksym_dep_filter when multiple EXPORT_SYMBOL() on the same line
        gcov: disable -Wmaybe-uninitialized warning
        gcov: disable tree-loop-im to reduce stack usage
        gcov: disable for COMPILE_TEST
        Kbuild: disable 'maybe-uninitialized' warning for CONFIG_PROFILE_ALL_BRANCHES
        Kbuild: change CC_OPTIMIZE_FOR_SIZE definition
        kbuild: forbid kernel directory to contain spaces and colons
        kbuild: adjust ksym_dep_filter for some cmd_* renames
        kbuild: Fix dependencies for final vmlinux link
        kbuild: better abstract vmlinux sequential prerequisites
        kbuild: fix call to adjust_autoksyms.sh when output directory specified
        kbuild: Get rid of KBUILD_STR
        kbuild: rename cmd_as_s_S to cmd_cpp_s_S
        kbuild: rename cmd_cc_i_c to cmd_cpp_i_c
        kbuild: drop redundant "PHONY += FORCE"
        kbuild: delete unnecessary "@:"
        kbuild: mark help target as PHONY
        ...
      5b26fc88
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · e12fab28
      Linus Torvalds authored
      Merge fixes from Andrew Morton:
       "10 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        drivers/pinctrl/intel/pinctrl-baytrail.c: fix build with gcc-4.4
        update "mm/zsmalloc: don't fail if can't create debugfs info"
        dma-debug: avoid spinlock recursion when disabling dma-debug
        mm: oom_reaper: remove some bloat
        memcg: fix mem_cgroup_out_of_memory() return value.
        ocfs2: fix improper handling of return errno
        mm: slub: remove unused virt_to_obj()
        mm: kasan: remove unused 'reserved' field from struct kasan_alloc_meta
        mm: make CONFIG_DEFERRED_STRUCT_PAGE_INIT depends on !FLATMEM explicitly
        seqlock: fix raw_read_seqcount_latch()
      e12fab28
    • Linus Torvalds's avatar
      Merge tag 'dax-locking-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 478a1469
      Linus Torvalds authored
      Pull DAX locking updates from Ross Zwisler:
       "Filesystem DAX locking for 4.7
      
         - We use a bit in an exceptional radix tree entry as a lock bit and
           use it similarly to how page lock is used for normal faults.  This
           fixes races between hole instantiation and read faults of the same
           index.
      
         - Filesystem DAX PMD faults are disabled, and will be re-enabled when
           PMD locking is implemented"
      
      * tag 'dax-locking-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        dax: Remove i_mmap_lock protection
        dax: Use radix tree entry lock to protect cow faults
        dax: New fault locking
        dax: Allow DAX code to replace exceptional entries
        dax: Define DAX lock bit for radix tree exceptional entry
        dax: Make huge page handling depend of CONFIG_BROKEN
        dax: Fix condition for filling of PMD holes
      478a1469
    • Linus Torvalds's avatar
      Merge tag 'dax-misc-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 315227f6
      Linus Torvalds authored
      Pull misc DAX updates from Vishal Verma:
       "DAX error handling for 4.7
      
         - Until now, dax has been disabled if media errors were found on any
           device.  This enables the use of DAX in the presence of these
           errors by making all sector-aligned zeroing go through the driver.
      
         - The driver (already) has the ability to clear errors on writes that
           are sent through the block layer using 'DSMs' defined in ACPI 6.1.
      
        Other misc changes:
      
         - When mounting DAX filesystems, check to make sure the partition is
           page aligned.  This is a requirement for DAX, and previously, we
           allowed such unaligned mounts to succeed, but subsequent
           reads/writes would fail.
      
         - Misc/cleanup fixes from Jan that remove unused code from DAX
           related to zeroing, writeback, and some size checks"
      
      * tag 'dax-misc-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        dax: fix a comment in dax_zero_page_range and dax_truncate_page
        dax: for truncate/hole-punch, do zeroing through the driver if possible
        dax: export a low-level __dax_zero_page_range helper
        dax: use sb_issue_zerout instead of calling dax_clear_sectors
        dax: enable dax in the presence of known media errors (badblocks)
        dax: fallback from pmd to pte on error
        block: Update blkdev_dax_capable() for consistency
        xfs: Add alignment check for DAX mount
        ext2: Add alignment check for DAX mount
        ext4: Add alignment check for DAX mount
        block: Add bdev_dax_supported() for dax mount checks
        block: Add vfs_msg() interface
        dax: Remove redundant inode size checks
        dax: Remove pointless writeback from dax_do_io()
        dax: Remove zeroing from dax_io()
        dax: Remove dead zeroing code from fault handlers
        ext2: Avoid DAX zeroing to corrupt data
        ext2: Fix block zeroing in ext2_get_blocks() for DAX
        dax: Remove complete_unwritten argument
        DAX: move RADIX_DAX_ definitions to dax.c
      315227f6
  2. 26 May, 2016 24 commits