Skip to content
  1. Jul 04, 2015
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 1b3618b6
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "Except for the preempt notifiers fix, these are all small bugfixes
        that could have been waited for -rc2.  Sending them now since I was
        taking care of Peter's patch anyway"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        kvm: add hyper-v crash msrs values
        KVM: x86: remove data variable from kvm_get_msr_common
        KVM: s390: virtio-ccw: don't overwrite config space values
        KVM: x86: keep track of LVT0 changes under APICv
        KVM: x86: properly restore LVT0
        KVM: x86: make vapics_in_nmi_mode atomic
        sched, preempt_notifier: separate notifier registration from static_key inc/dec
      1b3618b6
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 14a6f198
      Linus Torvalds authored
      Pull irq update from Thomas Gleixner:
       "The last update for 4.2 is just moving a macro from a local header to
        the global one, so it can be used in architecture code as well.
      
        Cleanup of the now empty local header is 4.3 material"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip: Move IRQCHIP_DECLARE macro to include/linux/irqchip.h
      14a6f198
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b1be9ead
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Two FPU rewrite related fixes.  This addresses all known x86
        regressions at this stage.  Also some other misc fixes"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/fpu: Fix boot crash in the early FPU code
        x86/asm/entry/64: Update path names
        x86/fpu: Fix FPU related boot regression when CPUID masking BIOS feature is enabled
        x86/boot/setup: Clean up the e820_reserve_setup_data() code
        x86/kaslr: Fix typo in the KASLR_FLAG documentation
      b1be9ead
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 22a093b2
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
       "Debug info and other statistics fixes and related enhancements"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/numa: Fix numa balancing stats in /proc/pid/sched
        sched/numa: Show numa_group ID in /proc/sched_debug task listings
        sched/debug: Move print_cfs_rq() declaration to kernel/sched/sched.h
        sched/stat: Expose /proc/pid/schedstat if CONFIG_SCHED_INFO=y
        sched/stat: Simplify the sched_info accounting dependency
      22a093b2
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c1776a18
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "This tree includes an x86 PMU scheduling fix, but most changes are
        late breaking tooling fixes and updates:
      
        User visible fixes:
      
         - Create config.detected into OUTPUT directory, fixing parallel
           builds sharing the same source directory (Aaro Kiskinen)
      
         - Allow to specify custom linker command, fixing some MIPS64 builds.
           (Aaro Kiskinen)
      
         - Fix to show proper convergence stats in 'perf bench numa' (Srikar
           Dronamraju)
      
        User visible changes:
      
         - Validate syscall list passed via -e argument to 'perf trace'.
           (Arnaldo Carvalho de Melo)
      
         - Introduce 'perf stat --per-thread' (Jiri Olsa)
      
         - Check access permission for --kallsyms and --vmlinux (Li Zhang)
      
         - Move toggling event logic from 'perf top' and into hists browser,
           allowing freeze/unfreeze with event lists with more than one entry
           (Namhyung Kim)
      
         - Add missing newlines when dumping PERF_RECORD_FINISHED_ROUND and
           showing the Aggregated stats in 'perf report -D' (Adrian Hunter)
      
        Infrastructure fixes:
      
         - Add missing break for PERF_RECORD_ITRACE_START, which caused those
           events samples to be parsed as well as PERF_RECORD_LOST_SAMPLES.
           ITRACE_START only appears when Intel PT or BTS are present, so..
           (Jiri Olsa)
      
         - Call the perf_session destructor when bailing out in the inject,
           kmem, report, kvm and mem tools (Taeung Song)
      
        Infrastructure changes:
      
         - Move stuff out of 'perf stat' and into the lib for further use
           (Jiri Olsa)
      
         - Reference count the cpu_map and thread_map classes (Jiri Olsa)
      
         - Set evsel->{cpus,threads} from the evlist, if not set, allowing the
           generalization of some 'perf stat' functions that previously were
           accessing private static evlist variable (Jiri Olsa)
      
         - Delete an unnecessary check before the calling free_event_desc()
           (Markus Elfring)
      
         - Allow auxtrace data alignment (Adrian Hunter)
      
         - Allow events with dot (Andi Kleen)
      
         - Fix failure to 'perf probe' events on arm (He Kuang)
      
         - Add testing for Makefile.perf (Jiri Olsa)
      
         - Add test for make install with prefix (Jiri Olsa)
      
         - Fix single target build dependency check (Jiri Olsa)
      
         - Access thread_map entries via accessors, prep patch to hold more
           info per entry, for ongoing 'perf stat --per-thread' work (Jiri
           Olsa)
      
         - Use __weak definition from compiler.h (Sukadev Bhattiprolu)
      
         - Split perf_pmu__new_alias() (Sukadev Bhattiprolu)"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (54 commits)
        perf tools: Allow to specify custom linker command
        perf tools: Create config.detected into OUTPUT directory
        perf mem: Fill in the missing session freeing after an error occurs
        perf kvm: Fill in the missing session freeing after an error occurs
        perf report: Fill in the missing session freeing after an error occurs
        perf kmem: Fill in the missing session freeing after an error occurs
        perf inject: Fill in the missing session freeing after an error occurs
        perf tools: Add missing break for PERF_RECORD_ITRACE_START
        perf/x86: Fix 'active_events' imbalance
        perf symbols: Check access permission when reading symbol files
        perf stat: Introduce --per-thread option
        perf stat: Introduce print_counters function
        perf stat: Using init_stats instead of memset
        perf stat: Rename print_interval to process_interval
        perf stat: Remove perf_evsel__read_cb function
        perf stat: Move perf_stat initialization counter process code
        perf stat: Move zero_per_pkg into counter process code
        perf stat: Separate counters reading and processing
        perf stat: Introduce read_counters function
        perf stat: Introduce perf_evsel__read function
        ...
      c1776a18
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 91cca0f0
      Linus Torvalds authored
      Pull max log buf size increase from Ingo Molnar:
       "Ran into this limit recently, so increase it by an order of magnitude"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        printk: Increase maximum CONFIG_LOG_BUF_SHIFT from 21 to 25
      91cca0f0
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · ec0337e0
      Linus Torvalds authored
      Pull second round of input updates from Dmitry Torokhov:
       "A new driver for Weida wdt87xx touch controllers, and a bunch of
        fixups for other drivers"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: wdt87xx_i2c - add a scaling factor for TOUCH_MAJOR event
        Input: wdt87xx_i2c - remove stray newline in diagnostic message
        Input: arc_ps2 - add HAS_IOMEM dependency
        Input: wdt87xx_i2c - fix format warning
        Input: improve parsing OF parameters for touchscreens
        Input: edt-ft5x06 - mark as direct input device
        Input: use for_each_set_bit() where appropriate
        Input: add a driver for wdt87xx touchscreen controller
        Input: axp20x-pek - fix reporting button state as inverted
        Input: xpad - re-send LED command on present event
        Input: xpad - set the LEDs properly on XBox Wireless controllers
        Input: imx_keypad - check for clk_prepare_enable() error
      ec0337e0
    • Ingo Molnar's avatar
      x86/fpu: Fix boot crash in the early FPU code · b96fecbf
      Ingo Molnar authored
      Jan Kara and Thomas Gleixner reported boot crashes in the FPU
      code:
      
        general protection fault: 0000 [#1] SMP
        RIP: 0010:[<ffffffff81048a6c>]  [<ffffffff81048a6c>] mxcsr_feature_mask_init+0x1c/0x40
      
        2b:*  0f ae 85 00 fe ff ff    fxsave -0x200(%rbp)
      
      and bisected it down to the following FPU commit:
      
         91a8c2a5
      
       ("x86/fpu: Clean up and fix MXCSR handling")
      
      The reason is that the on-stack FPU registers state variable,
      used by the FXSAVE instruction, did not have the required
      minimum alignment of 16 bytes, causing the general protection
      fault.
      
      This is most likely a GCC bug in older GCC versions, but the
      offending commit also added a bogus extra 32-byte alignment
      (which GCC ignored too).
      
      So fix this bug by making the variable static again, but also
      mark it __initdata this time, because fpu__init_system_mxcsr()
      is now an __init function.
      
      Reported-and-bisected-by: default avatarJan Kara <jack@suse.cz>
      Reported-bisected-and-tested-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Andy Lutomirski <luto@amacapital.net>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: Fenghua Yu <fenghua.yu@intel.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/20150704075819.GA9201@gmail.com
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      b96fecbf
    • Srikar Dronamraju's avatar
      sched/numa: Fix numa balancing stats in /proc/pid/sched · 397f2378
      Srikar Dronamraju authored
      Commit 44dba3d5
      
       ("sched: Refactor task_struct to use
      numa_faults instead of numa_* pointers") modified the way
      tsk->numa_faults stats are accounted.
      
      However that commit never touched show_numa_stats() that is displayed
      in /proc/pid/sched and thus the numbers displayed in /proc/pid/sched
      don't match the actual numbers.
      
      Fix it by making sure that /proc/pid/sched reflects the task
      fault numbers. Also add group fault stats too.
      
      Also couple of more modifications are added here:
      
      1. Format changes:
      
        - Previously we would list two entries per node, one for private
          and one for shared. Also the home node info was listed in each entry.
      
        - Now preferred node, total_faults and current node are
          displayed separately.
      
        - Now there is one entry per node, that lists private,shared task and
          group faults.
      
      2. Unit changes:
      
        - p->numa_pages_migrated was getting reset after every read of
          /proc/pid/sched. It's more useful to have absolute numbers since
          differential migrations between two accesses can be more easily
          calculated.
      
      Signed-off-by: default avatarSrikar Dronamraju <srikar@linux.vnet.ibm.com>
      Acked-by: default avatarRik van Riel <riel@redhat.com>
      Cc: Iulia Manda <iulia.manda21@gmail.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/1435252903-1081-4-git-send-email-srikar@linux.vnet.ibm.com
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      397f2378
    • Srikar Dronamraju's avatar
      sched/numa: Show numa_group ID in /proc/sched_debug task listings · e3d24d0a
      Srikar Dronamraju authored
      
      
      Having the numa group ID in /proc/sched_debug helps to see how
      the numa groups have spread across the system.
      
      Signed-off-by: default avatarSrikar Dronamraju <srikar@linux.vnet.ibm.com>
      Acked-by: default avatarRik van Riel <riel@redhat.com>
      Cc: Iulia Manda <iulia.manda21@gmail.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/1435252903-1081-3-git-send-email-srikar@linux.vnet.ibm.com
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      e3d24d0a
    • Srikar Dronamraju's avatar
      sched/debug: Move print_cfs_rq() declaration to kernel/sched/sched.h · 6b55c965
      Srikar Dronamraju authored
      
      
      Currently print_cfs_rq() is declared in include/linux/sched.h.
      However it's not used outside kernel/sched. Hence move the
      declaration to kernel/sched/sched.h
      
      Also some functions are only available for CONFIG_SCHED_DEBUG=y.
      Hence move the declarations to within the #ifdef.
      
      Signed-off-by: default avatarSrikar Dronamraju <srikar@linux.vnet.ibm.com>
      Acked-by: default avatarRik van Riel <riel@redhat.com>
      Cc: Iulia Manda <iulia.manda21@gmail.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/1435252903-1081-2-git-send-email-srikar@linux.vnet.ibm.com
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      6b55c965
    • Naveen N. Rao's avatar
      sched/stat: Expose /proc/pid/schedstat if CONFIG_SCHED_INFO=y · 5968cece
      Naveen N. Rao authored
      
      
      Expand /proc/pid/schedstat output:
      
       - enable it on CONFIG_TASK_DELAY_ACCT=y && !CONFIG_SCHEDSTATS kernels.
      
       - dump all zeroes on kernels that are booted with the 'nodelayacct'
         option, which boot option disables delay accounting on
         CONFIG_TASK_DELAY_ACCT=y kernels.
      
      Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
      Cc: Balbir Singh <bsingharora@gmail.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: a.p.zijlstra@chello.nl
      Cc: ricklind@us.ibm.com
      Link: http://lkml.kernel.org/r/5ccbef17d4bc841084ea6e6421d4e4a23b7b806f.1435654789.git.naveen.n.rao@linux.vnet.ibm.com
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      5968cece
    • Naveen N. Rao's avatar
      sched/stat: Simplify the sched_info accounting dependency · f6db8347
      Naveen N. Rao authored
      
      
      Both CONFIG_SCHEDSTATS=y and CONFIG_TASK_DELAY_ACCT=y track task
      sched_info, which results in ugly #if clauses.
      
      Simplify the code by introducing a synthethic CONFIG_SCHED_INFO
      switch, selected by both.
      
      Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
      Cc: Balbir Singh <bsingharora@gmail.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: a.p.zijlstra@chello.nl
      Cc: ricklind@us.ibm.com
      Link: http://lkml.kernel.org/r/8d19eef800811a94b0f91bcbeb27430a884d7433.1435255405.git.naveen.n.rao@linux.vnet.ibm.com
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      f6db8347
    • Dmitry Torokhov's avatar
      Merge branch 'next' into for-linus · a5cba18c
      Dmitry Torokhov authored
      Prepare second round of input updates for 4.2 merge window.
      a5cba18c
    • Linus Torvalds's avatar
      Merge tag 'topic/drm-fixes-2015-07-04' of git://anongit.freedesktop.org/drm-intel · 5c65e7be
      Linus Torvalds authored
      Pull drm EDID fix from Daniel Vetter:
       "Since Dave is enjoying vacation I figured I'll send you this drm core
        fix directly"
      
      * tag 'topic/drm-fixes-2015-07-04' of git://anongit.freedesktop.org/drm-intel:
        drm/crtc: Fix edid length computation
      5c65e7be
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 5fc83528
      Linus Torvalds authored
      Pull virtio/vhost cross endian support from Michael Tsirkin:
       "I have just queued some more bugfix patches today but none fix
        regressions and none are related to these ones, so it looks like a
        good time for a merge for -rc1.
      
        The motivation for this is support for legacy BE guests on the new LE
        hosts.  There are two redeeming properties that made me merge this:
      
         - It's a trivial amount of code: since we wrap host/guest accesses
           anyway, almost all of it is well hidden from drivers.
      
         - Sane platforms would never set flags like VHOST_CROSS_ENDIAN_LEGACY,
           and when it's clear, there's zero overhead (as some point it was
           tested by compiling with and without the patches, got the same
           stripped binary).
      
        Maybe we could create a Kconfig symbol to enforce the second point:
        prevent people from enabling it eg on x86.  I will look into this"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        virtio-pci: alloc only resources actually used.
        macvtap/tun: cross-endian support for little-endian hosts
        vhost: cross-endian support for legacy devices
        virtio: add explicit big-endian support to memory accessors
        vhost: introduce vhost_is_little_endian() helper
        vringh: introduce vringh_is_little_endian() helper
        macvtap: introduce macvtap_is_little_endian() helper
        tun: add tun_is_little_endian() helper
        virtio: introduce virtio_is_little_endian() helper
      5fc83528
    • Shixin Zeng's avatar
      drm/crtc: Fix edid length computation · e24ff467
      Shixin Zeng authored
      The length of each EDID block is EDID_LENGTH, and number of blocks is
      (1 + edid->extensions) - we need to multiply not add them.
      
      This causes wrong EDID to be passed on, and is a regression introduced
      by d2ed3436
      
       (drm: Introduce helper for replacing blob properties)
      
      Signed-off-by: default avatarShixin Zeng <zeng.shixin@gmail.com>
      Cc: Daniel Stone <daniels@collabora.com>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: default avatarDaniel Stone <daniels@collabora.com>
      [danvet: Add Cc: and fix commit summary.]
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      e24ff467
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 0cbee992
      Linus Torvalds authored
      Pull user namespace updates from Eric Biederman:
       "Long ago and far away when user namespaces where young it was realized
        that allowing fresh mounts of proc and sysfs with only user namespace
        permissions could violate the basic rule that only root gets to decide
        if proc or sysfs should be mounted at all.
      
        Some hacks were put in place to reduce the worst of the damage could
        be done, and the common sense rule was adopted that fresh mounts of
        proc and sysfs should allow no more than bind mounts of proc and
        sysfs.  Unfortunately that rule has not been fully enforced.
      
        There are two kinds of gaps in that enforcement.  Only filesystems
        mounted on empty directories of proc and sysfs should be ignored but
        the test for empty directories was insufficient.  So in my tree
        directories on proc, sysctl and sysfs that will always be empty are
        created specially.  Every other technique is imperfect as an ordinary
        directory can have entries added even after a readdir returns and
        shows that the directory is empty.  Special creation of directories
        for mount points makes the code in the kernel a smidge clearer about
        it's purpose.  I asked container developers from the various container
        projects to help test this and no holes were found in the set of mount
        points on proc and sysfs that are created specially.
      
        This set of changes also starts enforcing the mount flags of fresh
        mounts of proc and sysfs are consistent with the existing mount of
        proc and sysfs.  I expected this to be the boring part of the work but
        unfortunately unprivileged userspace winds up mounting fresh copies of
        proc and sysfs with noexec and nosuid clear when root set those flags
        on the previous mount of proc and sysfs.  So for now only the atime,
        read-only and nodev attributes which userspace happens to keep
        consistent are enforced.  Dealing with the noexec and nosuid
        attributes remains for another time.
      
        This set of changes also addresses an issue with how open file
        descriptors from /proc/<pid>/ns/* are displayed.  Recently readlink of
        /proc/<pid>/fd has been triggering a WARN_ON that has not been
        meaningful since it was added (as all of the code in the kernel was
        converted) and is not now actively wrong.
      
        There is also a short list of issues that have not been fixed yet that
        I will mention briefly.
      
        It is possible to rename a directory from below to above a bind mount.
        At which point any directory pointers below the renamed directory can
        be walked up to the root directory of the filesystem.  With user
        namespaces enabled a bind mount of the bind mount can be created
        allowing the user to pick a directory whose children they can rename
        to outside of the bind mount.  This is challenging to fix and doubly
        so because all obvious solutions must touch code that is in the
        performance part of pathname resolution.
      
        As mentioned above there is also a question of how to ensure that
        developers by accident or with purpose do not introduce exectuable
        files on sysfs and proc and in doing so introduce security regressions
        in the current userspace that will not be immediately obvious and as
        such are likely to require breaking userspace in painful ways once
        they are recognized"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        vfs: Remove incorrect debugging WARN in prepend_path
        mnt: Update fs_fully_visible to test for permanently empty directories
        sysfs: Create mountpoints with sysfs_create_mount_point
        sysfs: Add support for permanently empty directories to serve as mount points.
        kernfs: Add support for always empty directories.
        proc: Allow creating permanently empty directories that serve as mount points
        sysctl: Allow creating permanently empty directories that serve as mountpoints.
        fs: Add helper functions for permanently empty directories.
        vfs: Ignore unlocked mounts in fs_fully_visible
        mnt: Modify fs_fully_visible to deal with locked ro nodev and atime
        mnt: Refactor the logic for mounting sysfs and proc in a user namespace
      0cbee992
  2. Jul 03, 2015
    • Linus Torvalds's avatar
      Merge tag 'remoteproc-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc · 2fee94b7
      Linus Torvalds authored
      Pull remoteproc updates from Ohad Ben-Cohen:
      
       - remoteproc fixes/cleanups from Suman Anna
      
       - new remoteproc TI Wakeup M3 driver from Dave Gerlach
      
       - remoteproc core support for TI's Wakeup M3 driver from both Dave and Suman
      
       - tiny remoteproc build fix from myself
      
      * tag 'remoteproc-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc:
        remoteproc: fix !CONFIG_OF build breakage
        remoteproc/wkup_m3: add a remoteproc driver for TI Wakeup M3
        Documentation: dt: add bindings for TI Wakeup M3 processor
        remoteproc: add a rproc ops for performing address translation
        remoteproc: introduce rproc_get_by_phandle API
        remoteproc: fix various checkpatch warnings
        remoteproc/davinci: fix quoted split string checkpatch warning
        remoteproc/ste: add blank lines after declarations
      2fee94b7
    • Linus Torvalds's avatar
      Merge tag 'hwspinlock-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock · d033ed9e
      Linus Torvalds authored
      Pull hwspinlock updates from Ohad Ben-Cohen:
      
       - hwspinlock core DT support from Suman Anna
      
       - OMAP hwspinlock DT support from Suman Anna
      
       - QCOM hwspinlock DT support from Bjorn Andersson
      
       - a new CSR atlas7 hwspinlock driver from Wei Chen
      
       - CSR atlas7 hwspinlock DT binding document from Wei Chen
      
       - a tiny QCOM hwspinlock driver fix from Bjorn Andersson
      
      * tag 'hwspinlock-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock:
        hwspinlock: qcom: Correct msb in regmap_field
        DT: hwspinlock: add the CSR atlas7 hwspinlock bindings document
        hwspinlock: add a CSR atlas7 driver
        hwspinlock: qcom: Add support for Qualcomm HW Mutex block
        DT: hwspinlock: Add binding documentation for Qualcomm hwmutex
        hwspinlock/omap: add support for dt nodes
        Documentation: dt: add the omap hwspinlock bindings document
        hwspinlock/core: add device tree support
        Documentation: dt: add common bindings for hwspinlock
      d033ed9e
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 6361c845
      Linus Torvalds authored
      Pull arm64 fixes (and cleanups) from Catalin Marinas:
       "Various arm64 fixes:
      
         - suspicious RCU usage warning
         - BPF (out of bounds array read and endianness conversion)
         - perf (of_node usage after of_node_put, cpu_pmu->plat_device
           assignment)
         - huge pmd/pud check for value 0
         - rate-limiting should only take unhandled signals into account
      
        Clean-up:
      
         - incorrect use of pgprot_t type
         - unused header include
         - __init annotation to arm_cpuidle_init
         - pr_debug instead of pr_error for disabled GICC entries in
           ACPI/MADT"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: Fix show_unhandled_signal_ratelimited usage
        ARM64 / SMP: Switch pr_err() to pr_debug() for disabled GICC entry
        arm64: cpuidle: add __init section marker to arm_cpuidle_init
        arm64: Don't report clear pmds and puds as huge
        arm64: perf: fix unassigned cpu_pmu->plat_device when probing PMU PPIs
        arm64: perf: Don't use of_node after putting it
        arm64: fix incorrect use of pgprot_t variable
        arm64/hw_breakpoint.c: remove unnecessary header
        arm64: bpf: fix endianness conversion bugs
        arm64: bpf: fix out-of-bounds read in bpf2a64_offset()
        ARM64: smp: Fix suspicious RCU usage with ipi tracepoints
      6361c845
    • Linus Torvalds's avatar
      Merge tag 'nios2-v4.2' of git://git.rocketboards.org/linux-socfpga-next · 31351f73
      Linus Torvalds authored
      Pull nios2 update from Ley Foon Tan:
       "Check number of timer instances"
      
      * tag 'nios2-v4.2' of git://git.rocketboards.org/linux-socfpga-next:
        nios2: check number of timer instances
      31351f73
    • Linus Torvalds's avatar
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 9a3c284a
      Linus Torvalds authored
      Pull more hwmon updates from Jean Delvare.
      
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        hwmon: (w83627ehf) Use swap() in w82627ehf_swap_tempreg()
        hwmon: Document which I2C addresses can be probed
        hwmon: (w83792d) Additional PWM outputs support
      9a3c284a
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 1e512b08
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "Mainly sending this off now for the writeback fixes, since they fix a
        real regression introduced with the cgroup writeback changes.  The
        NVMe fix could wait for next pull for this series, but it's simple
        enough that we might as well include it.
      
        This contains:
      
         - two cgroup writeback fixes from Tejun, fixing a user reported issue
           with luks crypt devices hanging when being closed.
      
         - NVMe error cleanup fix from Jon Derrick, fixing a case where we'd
           attempt to free an unregistered IRQ"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        NVMe: Fix irq freeing when queue_request_irq fails
        writeback: don't drain bdi_writeback_congested on bdi destruction
        writeback: don't embed root bdi_writeback_congested in bdi_writeback
      1e512b08
    • Linus Torvalds's avatar
      Merge tag 'fbdev-fixes-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · 1c65ae63
      Linus Torvalds authored
      Pull fbdev fix from Tomi Valkeinen:
       "Fix display regression on TI AM4xxx boards"
      
      * tag 'fbdev-fixes-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        OMAPDSS: fix probing if rfbi device is enabled
      1c65ae63
    • Linus Torvalds's avatar
      Merge tag 'edac_urgent_for_4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · b53343fc
      Linus Torvalds authored
      Pull EDAC fix from Borislav Petkov:
       "A build fix for octeon_edac from Aaro Koskinen"
      
      * tag 'edac_urgent_for_4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC, octeon: Fix broken build due to model helper renames
      b53343fc
    • Stephen Rothwell's avatar
    • Andrey Smetanin's avatar
      kvm: add hyper-v crash msrs values · a88464a8
      Andrey Smetanin authored
      
      
      Added Hyper-V crash msrs values - HV_X64_MSR_CRASH*.
      
      Signed-off-by: default avatarAndrey Smetanin <asmetanin@virtuozzo.com>
      Signed-off-by: default avatarDenis V. Lunev <den@openvz.org>
      Reviewed-by: default avatarPeter Hornyack <peterhornyack@google.com>
      CC: Paolo Bonzini <pbonzini@redhat.com>
      CC: Gleb Natapov <gleb@kernel.org>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      a88464a8
    • Nicolas Iooss's avatar
      KVM: x86: remove data variable from kvm_get_msr_common · b0996ae4
      Nicolas Iooss authored
      Commit 609e36d3 ("KVM: x86: pass host_initiated to functions that
      read MSRs") modified kvm_get_msr_common function to use msr_info->data
      instead of data but missed one occurrence.  Replace it and remove the
      unused local variable.
      
      Fixes: 609e36d3
      
       ("KVM: x86: pass host_initiated to functions that
      read MSRs")
      Signed-off-by: default avatarNicolas Iooss <nicolas.iooss_linux@m4x.org>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      b0996ae4
    • Cornelia Huck's avatar
      KVM: s390: virtio-ccw: don't overwrite config space values · 431dae77
      Cornelia Huck authored
      
      
      Eric noticed problems with vhost-scsi and virtio-ccw: vhost-scsi
      complained about overwriting values in the config space, which
      was triggered by a broken implementation of virtio-ccw's config
      get/set routines. It was probably sheer luck that we did not hit
      this before.
      
      When writing a value to the config space, the WRITE_CONF ccw will
      always write from the beginning of the config space up to and
      including the value to be set. If the config space up to the value
      has not yet been retrieved from the device, however, we'll end up
      overwriting values. Keep track of the known config space and update
      if needed to avoid this.
      
      Moreover, READ_CONF will only read the number of bytes it has been
      instructed to retrieve, so we must not copy more than that to the
      buffer, or we might overwrite trailing values.
      
      Reported-by: default avatarEric Farman <farman@linux.vnet.ibm.com>
      Signed-off-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
      Reviewed-by: default avatarEric Farman <farman@linux.vnet.ibm.com>
      Tested-by: default avatarEric Farman <farman@linux.vnet.ibm.com>
      Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      431dae77
    • Radim Krčmář's avatar
      KVM: x86: keep track of LVT0 changes under APICv · 59fd1323
      Radim Krčmář authored
      
      
      Memory-mapped LVT0 register already contains the new value when APICv
      traps so we can't directly detect a change.
      Memorize a bit we are interested in to enable legacy NMI watchdog.
      
      Suggested-by: default avatarYoshida Nobuo <yoshida.nb@ncos.nec.co.jp>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      59fd1323
    • Radim Krčmář's avatar
      KVM: x86: properly restore LVT0 · db138562
      Radim Krčmář authored
      
      
      Legacy NMI watchdog didn't work after migration/resume, because
      vapics_in_nmi_mode was left at 0.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      db138562
    • Radim Krčmář's avatar
      KVM: x86: make vapics_in_nmi_mode atomic · 42720138
      Radim Krčmář authored
      
      
      Writes were a bit racy, but hard to turn into a bug at the same time.
      (Particularly because modern Linux doesn't use this feature anymore.)
      
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      [Actually the next patch makes it much, much easier to trigger the race
       so I'm including this one for stable@ as well. - Paolo]
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      42720138
    • Peter Zijlstra's avatar
      sched, preempt_notifier: separate notifier registration from static_key inc/dec · 2ecd9d29
      Peter Zijlstra authored
      Commit 1cde2930 ("sched/preempt: Add static_key() to preempt_notifiers")
      had two problems.  First, the preempt-notifier API needs to sleep with the
      addition of the static_key, we do however need to hold off preemption
      while modifying the preempt notifier list, otherwise a preemption could
      observe an inconsistent list state.  KVM correctly registers and
      unregisters preempt notifiers with preemption disabled, so the sleep
      caused dmesg splats.
      
      Second, KVM registers and unregisters preemption notifiers very often
      (in vcpu_load/vcpu_put).  With a single uniprocessor guest the static key
      would move between 0 and 1 continuously, hitting the slow path on every
      userspace exit.
      
      To fix this, wrap the static_key inc/dec in a new API, and call it from
      KVM.
      
      Fixes: 1cde2930
      
       ("sched/preempt: Add static_key() to preempt_notifiers")
      Reported-by: default avatarPontus Fuchs <pontus.fuchs@gmail.com>
      Reported-by: default avatarTakashi Iwai <tiwai@suse.de>
      Tested-by: default avatarTakashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      2ecd9d29
    • Suzuki K. Poulose's avatar
      arm64: Fix show_unhandled_signal_ratelimited usage · f871d268
      Suzuki K. Poulose authored
      Commit 86dca36e introduced ratelimited usage for
      'unhandled_signal' messages.
      The commit checks the ratelimit irrespective of whether
      the signal is handled or not, which is wrong and leads
      to false reports like the below in dmesg :
      
      __do_user_fault: 127 callbacks suppressed
      
      Do the ratelimit check only if the signal is unhandled.
      
      Fixes: 86dca36e
      
       ("arm64: use private ratelimit state along with show_unhandled_signals")
      Cc: Vladimir Murzin <Vladimir.Murzin@arm.com>
      Signed-off-by: default avatarSuzuki K. Poulose <suzuki.poulose@arm.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      f871d268
    • Fabian Frederick's avatar
      hwmon: (w83627ehf) Use swap() in w82627ehf_swap_tempreg() · ffe3df53
      Fabian Frederick authored
      
      
      Use kernel.h macro definition.
      
      Thanks to Julia Lawall for Coccinelle scripting support.
      
      Signed-off-by: default avatarFabian Frederick <fabf@skynet.be>
      Signed-off-by: default avatarJean Delvare <jdelvare@suse.de>
      ffe3df53
    • Jean Delvare's avatar
      hwmon: Document which I2C addresses can be probed · 97607f98
      Jean Delvare authored
      
      
      Add an item to the checklist when submitting a new hwmon driver: only
      some I2C addresses can be probed, others should not for safety
      reasons.
      
      Signed-off-by: default avatarJean Delvare <jdelvare@suse.de>
      Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
      97607f98
    • Roger Lucas's avatar
      hwmon: (w83792d) Additional PWM outputs support · f617f731
      Roger Lucas authored
      
      
      Add pwm[4-7] and the associated pwm[4-7]_mode attributes.
      
      Signed-off-by: default avatarRoger Lucas <vt8231@hiddenengine.co.uk>
      Signed-off-by: default avatarJean Delvare <jdelvare@suse.de>
      f617f731
    • Hanjun Guo's avatar
      ARM64 / SMP: Switch pr_err() to pr_debug() for disabled GICC entry · f9058929
      Hanjun Guo authored
      
      
      It is normal that firmware presents GICC entry or entries (processors)
      with disabled flag in ACPI MADT, taking a system of 16 cpus for example,
      ACPI firmware may present 8 ebabled first with another 8 cpus disabled
      in MADT, the disabled cpus can be hot-added later.
      
      Firmware may also present more cpus than the hardware actually has, but
      disabled the unused ones, and easily enable it when the hardware has such
      cpus to make the firmware code scalable.
      
      So that's not an error for disabled cpus in MADT, we can switch pr_err()
      to pr_debug() to make the boot a little quieter by default.
      
      Since hwid for disabled cpus often are invalid, and we check invalid hwid
      first in the code, for use case that hot add cpus later will be filtered
      out and will not be counted in possible cups, so move this check before
      the hwid one to prepare the code to count for disabeld cpus when cpu
      hot-plug is introduced.
      
      Signed-off-by: default avatarHanjun Guo <hanjun.guo@linaro.org>
      Reviewed-by: default avatarAl Stone <ahs3@redhat.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      f9058929
    • Linus Torvalds's avatar
      Merge tag 'acpica-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 9bdc771f
      Linus Torvalds authored
      Pull ACPICA updates from Rafael Wysocki:
       "Additional ACPICA material for v4.2-rc1
      
        This will update the ACPICA code in the kernel to upstream revision
        20150619 (a bug-fix release mostly including stable-candidate fixes)
        and restore an earlier ACPICA commit that had to be reverted due to a
        regression introduced by it (the regression is addressed by
        blacklisting the only known system affected by it to date).
      
        The only new feature added by this update is the support for
        overriding objects in the ACPI namespace and a new ACPI table that can
        be used for that called the Override System Definition Table (OSDT).
        That should allow us to "patch" the ACPI namespace built from
        incomplete or incorrect ACPI System Definition tables (DSDT, SSDT)
        during system startup without the need to provide replacements for all
        of those tables in the future.
      
        Specifics:
      
         - Fix system resume problems related to 32-bit and 64-bit versions of
           the Firmware ACPI Control Structure (FACS) in the firmare (Lv
           Zheng)
      
         - Fix double initialization of the FACS (Lv Zheng)
      
         - Add _CLS object processing code to ACPICA (Suravee Suthikulpanit)
      
         - Add support for the (currently missing) new GIC version field in
           the Multiple APIC Description Table (MADT) (Hanjun Guo)
      
         - Add support for overriding objects in the ACPI namespace to ACPICA
           and OSDT support (Lv Zheng, Bob Moore, Zhang Rui)
      
         - Updates related to the TCPA and TPM2 ACPI tables (Bob Moore)
      
         - Restore the commit modifying _REV to always return "2" (as required
           by ACPI 6) and add a blacklisting mechanism for systems that may be
           affected by that change (Rafael J Wysocki)
      
         - Assorted fixes and cleanups (Bob Moore, Lv Zheng, Sascha Wildner)"
      
      * tag 'acpica-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (28 commits)
        Revert 'Revert "ACPICA: Permanently set _REV to the value '2'."'
        ACPI / init: Make it possible to override _REV
        ACPICA: Update version to 20150619
        ACPICA: Comment update, no functional change
        ACPICA: Update TPM2 ACPI table
        ACPICA: Update definitions for the TCPA and TPM2 ACPI tables
        ACPICA: Split C library prototypes to new header
        ACPICA: De-macroize calls to standard C library functions
        ACPI / acpidump: Update acpidump manual
        ACPICA: acpidump: Convert the default behavior to dump from /sys/firmware/acpi/tables
        ACPICA: acpidump: Allow customized tables to be dumped without accessing /dev/mem
        ACPICA: Cleanup output for the ASL Debug object
        ACPICA: Update for acpi_install_table memory types
        ACPICA: Namespace: Change namespace override to avoid node deletion
        ACPICA: Namespace: Add support of OSDT table
        ACPICA: Namespace: Add support to allow overriding objects
        ACPICA: ACPI 6.0: Add values for MADT GIC version field
        ACPICA: Utilities: Add _CLS processing
        ACPICA: Add dragon_fly support to unix file mapping file
        ACPICA: EFI: Add EFI interface definitions to eliminate dependency of GNU EFI
        ...
      9bdc771f