1. 02 Aug, 2013 7 commits
    • 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
  2. 01 Aug, 2013 14 commits
    • 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
    • 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
    • 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
  3. 31 Jul, 2013 19 commits