Skip to content
  1. Aug 04, 2013
  2. Aug 03, 2013
    • Vivien Didelot's avatar
      hwmon: (max6697) fix MAX6581 ideality · 5c52add1
      Vivien Didelot authored
      
      
      Without this patch, the values for ideality (register 0x4b) and ideality
      selection mask (register 0x4c) are inverted.
      
      Signed-off-by: default avatarVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Cc: stable@vger.kernel.org # 3.9+
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      5c52add1
    • Russell King's avatar
      Merge branch 'security-fixes' into fixes · e35ac62d
      Russell King authored
      e35ac62d
    • Russell King's avatar
      ARM: fix nommu builds with 48be69a0 (ARM: move signal handlers into a vdso-like page) · 8c0cc8a5
      Russell King authored
      
      
      Olof reports that noMMU builds error out with:
      
      arch/arm/kernel/signal.c: In function 'setup_return':
      arch/arm/kernel/signal.c:413:25: error: 'mm_context_t' has no member named 'sigpage'
      
      This shows one of the evilnesses of IS_ENABLED().  Get rid of it here
      and replace it with #ifdef's - and as no noMMU platform can make use
      of sigpage, depend on CONIFG_MMU not CONFIG_ARM_MPU.
      
      Reported-by: default avatarOlof Johansson <olof@lixom.net>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      8c0cc8a5
    • Russell King's avatar
      ARM: fix a cockup in 48be69a0 (ARM: move signal handlers into a vdso-like page) · e0d40756
      Russell King authored
      
      
      Unfortunately, I never committed the fix to a nasty oops which can
      occur as a result of that commit:
      
      ------------[ cut here ]------------
      kernel BUG at /home/olof/work/batch/include/linux/mm.h:414!
      Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
      Modules linked in:
      CPU: 0 PID: 490 Comm: killall5 Not tainted 3.11.0-rc3-00288-gabe0308 #53
      task: e90acac0 ti: e9be8000 task.ti: e9be8000
      PC is at special_mapping_fault+0xa4/0xc4
      LR is at __do_fault+0x68/0x48c
      
      This doesn't show up unless you do quite a bit of testing; a simple
      boot test does not do this, so all my nightly tests were passing fine.
      
      The reason for this is that install_special_mapping() expects the
      page array to stick around, and as this was only inserting one page
      which was stored on the kernel stack, that's why this was blowing up.
      
      Reported-by: default avatarOlof Johansson <olof@lixom.net>
      Tested-by: default avatarOlof Johansson <olof@lixom.net>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      e0d40756
    • Linus Torvalds's avatar
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · abe03080
      Linus Torvalds authored
      Pull infiniband/rdma fixes from Roland Dreier:
       - Fixes for the newly merged mlx5 hardware driver
       - Stack info leak fixes from Dan Carpenter
       - Fixes for pkey table handling with SR-IOV
       - A few other small things
      
      * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
        IPoIB: Fix pkey change flow for virtualization environments
        IPoIB: Make sure child devices use valid/proper pkeys
        IB/core: Create QP1 using the pkey index which contains the default pkey
        mlx5_core: Variable may be used uninitialized
        mlx5_core: Implement new initialization sequence
        mlx5_core: Fix use after free in mlx5_cmd_comp_handler()
        IB/mlx5: Fix stack info leak in mlx5_ib_alloc_ucontext()
        IB/mlx5: Fix error return code in init_one()
        IB/mlx4: Use default pkey when creating tunnel QPs
        RDMA/cma: Only call cma_save_ib_info() for CM REQs
        RDMA/cma: Fix accessing invalid private data for UD
        RDMA/cma: Fix gcc warning
        Revert "RDMA/nes: Fix compilation error when nes_debug is enabled"
        IB/qib: Add err_decode() call for ring dump
        RDMA/cxgb3: Fix stack info leak in iwch_create_cq()
        RDMA/nes: Fix info leaks in nes_create_qp() and nes_create_cq()
        RDMA/ocrdma: Fix several stack info leaks
        RDMA/cxgb4: Fix stack info leak in c4iw_create_qp()
        RDMA/ocrdma: Remove unused include
      abe03080
    • Linus Torvalds's avatar
      Merge tag 'gpio-for-v3.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 1cb39a6c
      Linus Torvalds authored
      Pull GPIO fixes from Linus Walleij:
       "Yet another GPIO pull request, fixing the fix from the last one.  It
        turns out that fixing the boot path for device tree boots on OMAP
        breaks out antique systems (such as OMAP1) and we need to find a
        better way.  So we're reverting that "fix" for the moment and thinking
        about something better.
      
        Also fixing a build issue on the MSM driver"
      
      * tag 'gpio-for-v3.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
        gpio_msm: Fix build error due to missing err.h
        Revert "gpio/omap: don't create an IRQ mapping for every GPIO on DT"
        Revert "gpio/omap: auto request GPIO as input if used as IRQ via DT"
        Revert "gpio/omap: fix build error when OF_GPIO is not defined."
      1cb39a6c
    • Linus Torvalds's avatar
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · e7e2e511
      Linus Torvalds authored
      Pull powerpc fixes from Ben Herrenschmidt:
       "Here is not quite a handful of powerpc fixes for rc3.
      
        The windfarm fix is a regression fix (though not a new one), the PMU
        interrupt rename is not a fix per-se but has been submitted a long
        time ago and I kept forgetting to put it in (it puts us back in sync
        with x86), the other perf bit is just about putting an API/ABI bit
        definition in the right place for userspace to consume, and finally,
        we have a fix for the VPHN (Virtual Partition Home Node) feature
        (notification that the hypervisor is moving nodes around) which could
        cause lockups so we may as well fix it now"
      
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc/windfarm: Fix noisy slots-fan on Xserve (rm31)
        powerpc: VPHN topology change updates all siblings
        powerpc/perf: Export PERF_EVENT_CONFIG_EBB_SHIFT to userspace
        powerpc: Rename PMU interrupts from CNT to PMI
      e7e2e511
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm · 6d039f8f
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
       "I've thought long and hard about what to say for this pull request,
        and I really can't work out anything sane to say to summarise much of
        these commits.  The problem is, for most of these are, yet again, lots
        of small bits scattered around the place without any real overall
        theme to them"
      
      Most notable is probably the kuser page helper improvements.
      
      * 'fixes' of git://git.linaro.org/people/rmk/linux-arm: (22 commits)
        ARM: Add .text annotations where required after __CPUINIT removal
        ARM: 7803/1: Fix deadlock scenario with smp_send_stop()
        ARM: make vectors page inaccessible from userspace
        ARM: move signal handlers into a vdso-like page
        ARM: allow kuser helpers to be removed from the vector page
        ARM: update FIQ support for relocation of vectors
        ARM: use linker magic for vectors and vector stubs
        ARM: move vector stubs
        ARM: poison memory between kuser helpers
        ARM: poison the vectors page
        ARM: 7801/1: v6: prevent gcc 4.5 from reordering extended CP15 reads above is_smp() test
        ARM: 7800/1: ARMv7-M: Fix name of NVIC handler function
        ARM: Fix sorting of machine- initializers
        ARM: 7791/1: a.out: remove partial a.out support
        ARM: 7790/1: Fix deferred mm switch on VIVT processors
        ARM: 7789/1: Do not run dummy_flush_tlb_a15_erratum() on non-Cortex-A15
        ARM: 7787/1: virt: ensure visibility of __boot_cpu_mode
        ARM: 7788/1: elf: fix lpae hwcap feature reporting in proc/cpuinfo
        ARM: 7786/1: hyp: fix macro parameterisation
        ARM: 7785/1: mm: restrict early_alloc to section-aligned memory
        ...
      6d039f8f
    • Linus Torvalds's avatar
      Merge branch 'parisc-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · efc68164
      Linus Torvalds authored
      Pull parisc updates from Helge Deller:
       "The majority of lines changed are due the addition of a defconfig for
        the C8000 machine.  Even the fix in parisc/kernel/cache.c file is
        actually ony a 10-line fix, but the change became bigger (and much
        nicer) to avoid errors of the checkpatch script.
      
        Here is the short-changelog:
      
        This round of parisc updates includes mostly fixes for the C8000
        workstation.  We have a new defconfig file for this machine, as well
        as fixes for it's serial port, the AGP driver and the cache routines
        to cope with the vmas of the FireGL card in a C8000.  The sys32.h
        header file was not used and as such it's now gone"
      
      * 'parisc-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Fix interrupt routing for C8000 serial ports
        parisc: Remove arch/parisc/kernel/sys32.h header
        parisc: add defconfig for c8000 machine
        parisc: agp/parisc-agp: allow binding of user memory to the AGP GART
        parisc: Fix cache routines to ignore vma's with an invalid pfn
      efc68164
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · f9ed432c
      Linus Torvalds authored
      Pull HID fixes from Jiri Kosina:
       - fix hid-sony PS3 sixaxxis breakage from Benjamin Tissories
       - fix hidraw race condition from Yonghua Zheng
       - fix/bandaid for rare device enumeration problems of Logitech Unifying
         receivers from Nestor Lopez Casado
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
        HID: hidraw: fix improper mutex release
        HID: sony: fix HID mapping for PS3 sixaxis controller
        HID: hid-logitech-dj: querying_devices was never set
        HID: Revert "Revert "HID: Fix logitech-dj: missing Unifying device issue""
      f9ed432c
    • Linus Torvalds's avatar
      Merge tag 'please-pull-fix-mce-regression' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras · 940e84fc
      Linus Torvalds authored
      Pull MCE fix from Tony Luck:
       "Fix a regression in mce-severity.c"
      
      * tag 'please-pull-fix-mce-regression' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
        x86/mce: Fix mce regression from recent cleanup
      940e84fc
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.11-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · aa8032b6
      Linus Torvalds authored
      Pull PCI fixes from Bjorn Helgaas:
       "Yinghai fixed a couple regressions: one resource assignment problem
        introduced in v3.10 that showed up with SR-IOV on powerpc, and another
        SR-IOV hot-remove issue related to refcounting changes we merged for
        v3.11.
      
        Yinghai is still working on another SR-IOV-related fix or two, which
        will be simpler if pciehp is non-modular, so I included the Kconfig
        changes now to get them in earlier.
      
        Finally, a minor fix for the ARM Marvell EBU host bridge driver that
        was merged for v3.11
      
        Hotplug:
            PCI: pciehp: Fix null pointer deref when hot-removing SR-IOV device
            PCI: hotplug: Convert to be builtin only, not modular
            PCI: pciehp: Convert pciehp to be builtin only, not modular
      
        Resource allocation:
            PCI: Retry allocation of only the resource type that failed
      
        ARM:
            PCI: mvebu: Disable prefetchable memory support in PCI-to-PCI bridge"
      
      * tag 'pci-v3.11-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        PCI: mvebu: Disable prefetchable memory support in PCI-to-PCI bridge
        PCI: Retry allocation of only the resource type that failed
        PCI: pciehp: Convert pciehp to be builtin only, not modular
        PCI: hotplug: Convert to be builtin only, not modular
        PCI: pciehp: Fix null pointer deref when hot-removing SR-IOV device
      aa8032b6
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 1fe0135b
      Linus Torvalds authored
      Pull ACPI and power management fixes from Rafael Wysocki:
      
       - Revert two cpuidle commits added during the 3.8 development cycle
         that turn out to have introduced a significant performance regression
         as requested by Jeremy Eder.
      
       - The recent patches that made the freezer less heavy-weight introduced
         a regression causing user-space-driven hibernation using the ioctl()
         interface to block indefinitely when the hibernate process executes
         try_to_freeze().  Fix from Colin Cross addresses this by adding a
         process flag to mark the hibernate/suspend process to inform the
         freezer that that process should be ignored.
      
       - One of the recent cpufreq reverts uncovered a problem in the core
         causing the cpufreq driver module refcount to become negative after a
         system suspend-resume cycle.  Fix from Rafael J Wysocki.
      
       - The evaluation of the ACPI battery _BIX method has never worked
         correctly, because the commit that added support for it forgot to
         take the "Revision" field in the return package into account.  As a
         result, the reading of battery info doesn't work at all on some
         systems, which is addressed by a fix from Lan Tianyu.
      
      * tag 'pm+acpi-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        freezer: set PF_SUSPEND_TASK flag on tasks that call freeze_processes
        ACPI / battery: Fix parsing _BIX return value
        cpufreq: Fix cpufreq driver module refcount balance after suspend/resume
        Revert "cpuidle: Quickly notice prediction failure for repeat mode"
        Revert "cpuidle: Quickly notice prediction failure in general case"
      1fe0135b
  3. Aug 02, 2013
    • Thomas Petazzoni's avatar
      PCI: mvebu: Disable prefetchable memory support in PCI-to-PCI bridge · 36dd1f3e
      Thomas Petazzoni authored
      
      
      The Marvell PCIe driver uses an emulated PCI-to-PCI bridge to be able
      to dynamically set up MBus address decoding windows for PCI I/O and
      memory regions depending on the PCI devices enumerated by Linux.
      
      However, this emulated PCI-to-PCI bridge logic makes the Linux PCI
      core believe that prefetchable memory regions are supported (because
      the registers are read/write), while in fact no adress decoding window
      is ever created for such regions. Since the Marvell MBus address
      decoding windows do not distinguish memory regions and prefetchable
      memory regions, this patch takes a simple approach: change the
      PCI-to-PCI bridge emulation to let the Linux PCI core know that we
      don't support prefetchable memory regions.
      
      To achieve this, we simply make the prefetchable memory base a
      read-only register that always returns 0. Reading/writing all the
      other prefetchable memory related registers has no effect.
      
      This problem was originally reported by Finn Hoffmann
      <finn@uni-bremen.de>, who couldn't get a RTL8111/8168B PCI NIC working
      on the NSA310 Kirkwood platform after updating to 3.11-rc. The problem
      was that the PCI-to-PCI bridge emulation was making the Linux PCI core
      believe that we support prefetchable memory, so the Linux PCI core was
      only filling the prefetchable memory base and limit registers, which
      does not lead to a MBus window being created. The below patch has been
      confirmed by Finn Hoffmann to fix his problem on Kirkwood, and has
      otherwise been successfully tested on the Armada XP GP platform with a
      e1000e PCIe NIC and a Marvell SATA PCIe card.
      
      Reported-by: default avatarFinn Hoffmann <finn@uni-bremen.de>
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      36dd1f3e
    • Russell King's avatar
      Merge branch 'security-fixes' into fixes · 24195cad
      Russell King authored
      24195cad
  4. Aug 01, 2013
    • Russell King's avatar
      ARM: Add .text annotations where required after __CPUINIT removal · 2449189b
      Russell King authored
      Commit 8bd26e3a
      
       (arm: delete __cpuinit/__CPUINIT usage from all ARM
      users) caused some code to leak into sections which are discarded
      through the removal of __CPUINIT annotations.  Add appropriate .text
      annotations to bring these back into the kernel text.
      
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      2449189b
    • Stephen Boyd's avatar
      ARM: 7803/1: Fix deadlock scenario with smp_send_stop() · 44424c34
      Stephen Boyd authored
      
      
      If one process calls sys_reboot and that process then stops other
      CPUs while those CPUs are within a spin_lock() region we can
      potentially encounter a deadlock scenario like below.
      
      CPU 0                   CPU 1
      -----                   -----
                              spin_lock(my_lock)
      smp_send_stop()
       <send IPI>             handle_IPI()
                               disable_preemption/irqs
                                while(1);
       <PREEMPT>
      spin_lock(my_lock) <--- Waits forever
      
      We shouldn't attempt to run any other tasks after we send a stop
      IPI to a CPU so disable preemption so that this task runs to
      completion. We use local_irq_disable() here for cross-arch
      consistency with x86.
      
      Reported-by: default avatarSundarajan Srinivasan <sundaraj@codeaurora.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      44424c34
    • Russell King's avatar
      ARM: make vectors page inaccessible from userspace · a5463cd3
      Russell King authored
      
      
      If kuser helpers are not provided by the kernel, disable user access to
      the vectors page.  With the kuser helpers gone, there is no reason for
      this page to be visible to userspace.
      
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      a5463cd3
    • Russell King's avatar
      ARM: move signal handlers into a vdso-like page · 48be69a0
      Russell King authored
      
      
      Move the signal handlers into a VDSO page rather than keeping them in
      the vectors page.  This allows us to place them randomly within this
      page, and also map the page at a random location within userspace
      further protecting these code fragments from ROP attacks.  The new
      VDSO page is also poisoned in the same way as the vector page.
      
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      48be69a0
    • J. Bruce Fields's avatar
      svcrpc: set cr_gss_mech from gss-proxy as well as legacy upcall · 7193bd17
      J. Bruce Fields authored
      The change made to rsc_parse() in
      0dc1531a
      
       "svcrpc: store gss mech in
      svc_cred" should also have been propagated to the gss-proxy codepath.
      This fixes a crash in the gss-proxy case.
      
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      7193bd17
    • J. Bruce Fields's avatar
      svcrpc: fix kfree oops in gss-proxy code · 743e2171
      J. Bruce Fields authored
      
      
      mech_oid.data is an array, not kmalloc()'d memory.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      743e2171
    • J. Bruce Fields's avatar
      svcrpc: fix gss-proxy xdr decoding oops · dc43376c
      J. Bruce Fields authored
      
      
      Uninitialized stack data was being used as the destination for memcpy's.
      
      Longer term we'll just delete some of this code; all we're doing is
      skipping over xdr that we don't care about.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      dc43376c
    • J. Bruce Fields's avatar
      svcrpc: fix gss_rpc_upcall create error · 9f96392b
      J. Bruce Fields authored
      
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      9f96392b
    • NeilBrown's avatar
      NFSD/sunrpc: avoid deadlock on TCP connection due to memory pressure. · 447383d2
      NeilBrown authored
      
      
      Since we enabled auto-tuning for sunrpc TCP connections we do not
      guarantee that there is enough write-space on each connection to
      queue a reply.
      
      If memory pressure causes the window to shrink too small, the request
      throttling in sunrpc/svc will not accept any requests so no more requests
      will be handled.  Even when pressure decreases the window will not
      grow again until data is sent on the connection.
      This means we get a deadlock:  no requests will be handled until there
      is more space, and no space will be allocated until a request is
      handled.
      
      This can be simulated by modifying svc_tcp_has_wspace to inflate the
      number of byte required and removing the 'svc_sock_setbufsize' calls
      in svc_setup_socket.
      
      I found that multiplying by 16 was enough to make the requirement
      exceed the default allocation.  With this modification in place:
         mount -o vers=3,proto=tcp 127.0.0.1:/home /mnt
      would block and eventually time out because the nfs server could not
      accept any requests.
      
      This patch relaxes the request throttling to always allow at least one
      request through per connection.  It does this by checking both
        sk_stream_min_wspace() and xprt->xpt_reserved
      are zero.
      The first is zero when the TCP transmit queue is empty.
      The second is zero when there are no RPC requests being processed.
      When both of these are zero the socket is idle and so one more
      request can safely be allowed through.
      
      Applying this patch allows the above mount command to succeed cleanly.
      Tracing shows that the allocated write buffer space quickly grows and
      after a few requests are handled, the extra tests are no longer needed
      to permit further requests to be processed.
      
      The main purpose of request throttling is to handle the case when one
      client is slow at collecting replies and the send queue gets full of
      replies that the client hasn't acknowledged (at the TCP level) yet.
      As we only change behaviour when the send queue is empty this main
      purpose is still preserved.
      
      Reported-by: default avatarBen Myers <bpm@sgi.com>
      Signed-off-by: default avatarNeilBrown <neilb@suse.de>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      447383d2
    • Aaro Koskinen's avatar
      powerpc/windfarm: Fix noisy slots-fan on Xserve (rm31) · fe956a1d
      Aaro Koskinen authored
      
      
      slots-fan on G5 Xserve is always running at full speed with windfarm_rm31
      driver, resulting in a very high acoustic noise level. It seems the fan
      parameters are incorrect, and have been copied from the Drive Bay fan
      (RPM, not present on rm31) of the legacy therm_pm72 driver. This patch
      changes the parameters to match the Slots fan (PWM) of therm_pm72. With
      the patch, slots-fan speed drops from 99% to 19% during normal use,
      and slots-temp settle to ~42'C.
      
      Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
      CC: <stable@vger.kernel.org>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      fe956a1d
    • Robert Jennings's avatar
      powerpc: VPHN topology change updates all siblings · 3be7db6a
      Robert Jennings authored
      When an associativity level change is found for one thread, the
      siblings threads need to be updated as well.  This is done today
      for PRRN in stage_topology_update() but is missing for VPHN in
      update_cpu_associativity_changes_mask().  This patch will correctly
      update all thread siblings during a topology change.
      
      Without this patch a topology update can result in a CPU in
      init_sched_groups_power() getting stuck indefinitely in a loop.
      
      This loop is built in build_sched_groups(). As a result of the thread
      moving to a node separate from its siblings the struct sched_group will
      have its next pointer set to point to itself rather than the sched_group
      struct of the next thread.  This happens because we have a domain without
      the SD_OVERLAP flag, which is correct, and a topology that doesn't conform
      with reality (threads on the same core assigned to different numa nodes).
      When this list is traversed by init_sched_groups_power() it will reach
      the thread's sched_group structure and loop indefinitely; the cpu will
      be stuck at this point.
      
      The bug was exposed when VPHN was enabled in commit b7abef04
      
       (v3.9).
      
      Cc: <stable@vger.kernel.org> [v3.9+]
      Reported-by: default avatarJan Stancek <jstancek@redhat.com>
      Signed-off-by: default avatarRobert Jennings <rcj@linux.vnet.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      3be7db6a
    • Michael Ellerman's avatar
      powerpc/perf: Export PERF_EVENT_CONFIG_EBB_SHIFT to userspace · 8d7c55d0
      Michael Ellerman authored
      
      
      We use bit 63 of the event code for userspace to request that the event
      be counted using EBB (Event Based Branches). Export this value, making
      it part of the API - though only on processors that support EBB.
      
      Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      8d7c55d0
    • Michael Ellerman's avatar
      powerpc: Rename PMU interrupts from CNT to PMI · e8e813ed
      Michael Ellerman authored
      Back in commit 89713ed1 "Add timer, performance monitor and machine check
      counts to /proc/interrupts" we added a count of PMU interrupts to the
      output of /proc/interrupts.
      
      At the time we named them "CNT" to match x86.
      
      However in commit 89ccf465
      
       "Rename 'performance counter interrupt'", the
      x86 guys renamed theirs from "CNT" to "PMI".
      
      Arguably changing the name could break someone's script, but I think the
      chance of that is minimal, and it's preferable to have a name that 1) is
      somewhat meaningful, and 2) matches x86.
      
      Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      e8e813ed
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 64ccccf8
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Radeon, nouveau, exynos, intel, mgag200..
      
        Not all strictly regressions but there was probably only one patch I'd
        have really left out and it didn't seem worth respinning exynos to
        avoid it, the line change count is quite low.
      
         radeon: regressions + more dynamic powermanagement fixes, since DPM
           is a new feature, and off by default I'd prefer to keep merging
           fixes since it has a large userbase already and I'd like to keep
           them on mainline
      
         nouveau: is mostly regression fixes
      
         i915: is a regression fix since Daniel is on holidays I've merged it.
      
         mgag200: I've picked a bunch of targetted fixes from a big bunch of
           distro patches,
      
         exynos: build fixes mostly, one regression fix
      
        I expect things will slow right down now, I may send on the intel
        early quirk from Jesse separatly, since I think the x86 maintainers
        acked it"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (37 commits)
        drm/i915: fix missed hunk after GT access breakage
        drm/radeon/dpm: re-enable cac control on SI
        drm/radeon/dpm: fix calculations in si_calculate_leakage_for_v_and_t_formula
        drm: fix 64 bit drm fixed point helpers
        drm/radeon/atom: initialize more atom interpretor elements to 0
        drm/nouveau: fix semaphore dmabuf obj
        drm/nouveau/vm: make vm refcount into a kref
        drm/nv31/mpeg: don't recognize nv3x cards as having nv44 graph class
        drm/nv40/mpeg: write magic value to channel object to make it work
        drm/nouveau: fix size check for cards without vm
        drm/nv50-/disp: remove dcb_outp_match call, and related variables
        drm/nva3-/disp: fix hda eld writing, needs to be padded
        drm/nv31/mpeg: fix mpeg engine initialization
        drm/nv50/mc: include vp in the fb error reporting mask
        drm/nouveau: fix null pointer dereference in poll_changed
        drm/nv50/gpio: post-nv92 cards have 32 interrupt lines
        drm/nvc0/fb: take lock in nvc0_ram_put()
        drm/nouveau/core: xtensa firmware size needs to be 0x40000 no matter what
        drm/mgag200: Fix LUT programming for 16bpp
        drm/mgag200: Fix framebuffer pitch calculation
        ...
      64ccccf8
    • Linus Torvalds's avatar
      Merge tag 'fbdev-fixes-3.11-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · ec8fa306
      Linus Torvalds authored
      Pull fbdev fixes from Tomi Valkeinen:
       "Small fbdev fixes:
         - compile fixes
         - atyfb initialization fix
         - Fix freeing of the irq in sh7760fb & nuc900fb"
      
      * tag 'fbdev-fixes-3.11-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        video: sh7760fb: fix to pass correct device identity to free_irq()
        fbdev/atyfb: fix recent breakage in correct_chipset()
        fbdev/sgivwfb: fix compilation error in sgivwfb_mmap()
        video: nuc900fb: fix to pass correct device identity to request_irq()
        vga16fb: Remove unused variable
        video: xilinxfb: Fix compilation warning
      ec8fa306
    • Linus Torvalds's avatar
      Merge tag 'vfio-v3.11-rc4' of git://github.com/awilliam/linux-vfio · 3df765fc
      Linus Torvalds authored
      Pull vfio fixes from Alex Williamson:
       "misc fixes around overreacting to bus notifier events and a locking
        fix for a corner case blocked remove"
      
      * tag 'vfio-v3.11-rc4' of git://github.com/awilliam/linux-vfio:
        vfio-pci: Avoid deadlock on remove
        vfio: Ignore sprurious notifies
        vfio: Don't overreact to DEL_DEVICE
      3df765fc
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew Morton) · 19788a90
      Linus Torvalds authored
      Merge more patches from Andrew Morton:
       "A bunch of fixes.
      
        Plus Joe's printk move and rework.  It's not a -rc3 thing but now
        would be a nice time to offload it, while things are quiet.  I've been
        sitting on it all for a couple of weeks, no issues"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        vmpressure: make sure there are no events queued after memcg is offlined
        vmpressure: do not check for pending work to prevent from new work
        vmpressure: change vmpressure::sr_lock to spinlock
        printk: rename struct log to struct printk_log
        printk: use pointer for console_cmdline indexing
        printk: move braille console support into separate braille.[ch] files
        printk: add console_cmdline.h
        printk: move to separate directory for easier modification
        drivers/rtc/rtc-twl.c: fix: rtcX/wakealarm attribute isn't created
        mm: zbud: fix condition check on allocation size
        thp, mm: avoid PageUnevictable on active/inactive lru lists
        mm/swap.c: clear PageActive before adding pages onto unevictable list
        arch/x86/platform/ce4100/ce4100.c: include reboot.h
        mm: sched: numa: fix NUMA balancing when !SCHED_DEBUG
        rapidio: fix use after free in rio_unregister_scan()
        .gitignore: ignore *.lz4 files
        MAINTAINERS: dynamic debug: Jason's not there...
        dmi_scan: add comments on dmi_present() and the loop in dmi_scan_machine()
        ocfs2/refcounttree: add the missing NULL check of the return value of find_or_create_page()
        mm: mempolicy: fix mbind_range() && vma_adjust() interaction
      19788a90
    • Jiri Kosina's avatar
    • Thomas Bogendoerfer's avatar
      parisc: Fix interrupt routing for C8000 serial ports · dd5e6d6a
      Thomas Bogendoerfer authored
      
      
      We can't use dev->mod_index for selecting the interrupt routing entry,
      because it's not an index into interrupt routing table. It will be even
      wrong on a machine with 2 CPUs (4 cores). But all needed information is
      contained in the PAT entries for the serial ports. mod[0] contains the
      iosapic address and mod_info has some indications for the interrupt
      input (at least it looks like it). This patch implements the searching
      for the right iosapic and uses this interrupt input information.
      
      Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
      Cc: <stable@vger.kernel.org> # 3.10
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      dd5e6d6a
    • John David Anglin's avatar
      parisc: Remove arch/parisc/kernel/sys32.h header · 5a0ce2dc
      John David Anglin authored
      
      
      The KERNEL_SYSCALL define is not used anymore so the header can be
      removed.
      
      Signed-off-by: default avatarJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      5a0ce2dc
    • Helge Deller's avatar
      parisc: add defconfig for c8000 machine · 78f1386c
      Helge Deller authored
      
      
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      78f1386c
    • Alex Ivanov's avatar
      parisc: agp/parisc-agp: allow binding of user memory to the AGP GART · 06f0cce4
      Alex Ivanov authored
      
      
      Allow binding of user memory to the AGP GART on systems with HP
      Quicksilver AGP bus. This resolves 'bind memory failed' error seen in
      dmesg:
      
       [29.365973] [TTM] AGP Bind memory failed.
       …
       [29.367030] [drm] Forcing AGP to PCI mode
      
      The system doesn't more fail to bind the memory, and hence not falling
      back to the PCI mode (if other failures aren't detected).
      
      This is just a simple write down from the following patches:
      agp/amd-k7: Allow binding user memory to the AGP GART
      agp/hp-agp: Allow binding user memory to the AGP GART
      
      Signed-off-by: default avatarAlex Ivanov <gnidorah@p0n4ik.tk>
      Cc: <stable@vger.kernel.org> # 3.10
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      06f0cce4