1. 13 Apr, 2015 4 commits
    • Linus Torvalds's avatar
      Merge branch 'core-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9c65e12a
      Linus Torvalds authored
      Pull EFI update from Ingo Molnar:
       "This tree includes various fixes, cleanups, a new efi=debug boot
        option and EFI boot stub memory allocation optimizations"
      
      * 'core-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        efi/libstub: Retrieve FDT size when loaded from UEFI config table
        efi: Clean up the efi_call_phys_[prolog|epilog]() save/restore interaction
        efi: Disable interrupts around EFI calls, not in the epilog/prolog calls
        x86/efi: Add a "debug" option to the efi= cmdline
        firmware: dmi_scan: Use direct access to static vars
        firmware: dmi_scan: Use full dmi version for SMBIOS3
      9c65e12a
    • Linus Torvalds's avatar
      Merge tag 'md/4.0-rc7-fix' of git://neil.brown.name/md · 67dbb3a0
      Linus Torvalds authored
      Pull md fixes from Neil Brown:
       "Two regression fixes for md, one fairly recent and minor (diskstats
        has confusing data) and one older and more serious - RAID0 with
        non-power-of-2 chunksize corrupts data.
      
        I guess (almost) no-one uses non-power-of-2 chunks.
      
        Summary:
      
         - Revert recent change which broke IO accounting.
      
         - Fix bug with RAID0 arrays with non-power-of-2 chunk size"
      
      * tag 'md/4.0-rc7-fix' of git://neil.brown.name/md:
        md/raid0: fix bug with chunksize not a power of 2.
        md: fix md io stats accounting broken
      67dbb3a0
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 90036013
      Linus Torvalds authored
      Pull KVM updates from Paolo Bonzini:
       "First batch of KVM changes for 4.1
      
        The most interesting bit here is irqfd/ioeventfd support for ARM and
        ARM64.
      
        Summary:
      
        ARM/ARM64:
           fixes for live migration, irqfd and ioeventfd support (enabling
           vhost, too), page aging
      
        s390:
           interrupt handling rework, allowing to inject all local interrupts
           via new ioctl and to get/set the full local irq state for migration
           and introspection.  New ioctls to access memory by virtual address,
           and to get/set the guest storage keys.  SIMD support.
      
        MIPS:
           FPU and MIPS SIMD Architecture (MSA) support.  Includes some
           patches from Ralf Baechle's MIPS tree.
      
        x86:
           bugfixes (notably for pvclock, the others are small) and cleanups.
           Another small latency improvement for the TSC deadline timer"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (146 commits)
        KVM: use slowpath for cross page cached accesses
        kvm: mmu: lazy collapse small sptes into large sptes
        KVM: x86: Clear CR2 on VCPU reset
        KVM: x86: DR0-DR3 are not clear on reset
        KVM: x86: BSP in MSR_IA32_APICBASE is writable
        KVM: x86: simplify kvm_apic_map
        KVM: x86: avoid logical_map when it is invalid
        KVM: x86: fix mixed APIC mode broadcast
        KVM: x86: use MDA for interrupt matching
        kvm/ppc/mpic: drop unused IRQ_testbit
        KVM: nVMX: remove unnecessary double caching of MAXPHYADDR
        KVM: nVMX: checks for address bits beyond MAXPHYADDR on VM-entry
        KVM: x86: cache maxphyaddr CPUID leaf in struct kvm_vcpu
        KVM: vmx: pass error code with internal error #2
        x86: vdso: fix pvclock races with task migration
        KVM: remove kvm_read_hva and kvm_read_hva_atomic
        KVM: x86: optimize delivery of TSC deadline timer interrupt
        KVM: x86: extract blocking logic from __vcpu_run
        kvm: x86: fix x86 eflags fixed bit
        KVM: s390: migrate vcpu interrupt state
        ...
      90036013
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.1-rc1' of... · 4541fec3
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest updates from Shuah Khan:
       "This is a milestone update in a sense.  Several new tests and install
        and packaging support is added in this update.
      
        This update adds install and packaging tools developed on top of
        back-end shared logic enhancemnets to run and install tests.  In
        addition several timer tests are added.
      
         - New timer tests from John Stultz
      
         - rtc test from Prarit Bhargava
      
         - Enhancements to un and install tests from Michael Ellerman
      
         - Install and packaging tools from Shuah Khan
      
         - Cross-compilation enablement from Tyler Baker
      
         - A couple of bug fixes"
      
      * tag 'linux-kselftest-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: (42 commits)
        ftracetest: Do not use usleep directly
        selftest/mqueue: enable cross compilation
        selftest/ipc: enable cross compilation
        selftest/memfd: include default header install path
        selftest/mount: enable cross compilation
        selftest/memfd: enable cross compilation
        kselftests: timers: Make set-timer-lat fail more gracefully for !CAP_WAKE_ALARM
        selftests: Change memory on-off-test.sh name to be unique
        selftests: change cpu on-off-test.sh name to be unique
        selftests/mount: Make git ignore all binaries in mount test suite
        kselftests: timers: Reduce default runtime on inconsistency-check and set-timer-lat
        ftracetest: Convert exit -1 to exit $FAIL
        ftracetest: Cope properly with stack tracer not being enabled
        tools, update rtctest.c to verify passage of time
        Documentation, split up rtc.txt into documentation and test file
        selftests: Add tool to generate kselftest tar archive
        selftests: Add kselftest install tool
        selftests: Set CC using CROSS_COMPILE once in lib.mk
        selftests: Add install support for the powerpc tests
        selftests/timers: Use shared logic to run and install tests
        ...
      4541fec3
  2. 12 Apr, 2015 3 commits
  3. 11 Apr, 2015 11 commits
  4. 10 Apr, 2015 8 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 49850a14
      Linus Torvalds authored
      Pull SCSI target fixes from Nicholas Bellinger:
       "Just a few small fixes:
      
        Two from Andy, the first addresses a v4.0 target specific regression
        to a user visible configfs attribute, and the second adds a set of
        missing brackets around IPv6 discovery portal information within
        iscsi-target.
      
        And one from Mike that fixes an OOPs regression in traditional
        iscsi-target when an iovec allocation fails, that has been present
        since v3.10.y code.  (CC'd to stable)"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        iscsi target: fix oops when adding reject pdu
        iscsi-target: TargetAddress in SendTargets should bracket ipv6 addresses
        target: Allow userspace to write 1 to attrib/emulate_fua_write
      49850a14
    • Mike Christie's avatar
      iscsi target: fix oops when adding reject pdu · b815fc12
      Mike Christie authored
      This fixes a oops due to a double list add when adding a reject PDU for
      iscsit_allocate_iovecs allocation failures. The cmd has already been
      added to the conn_cmd_list in iscsit_setup_scsi_cmd, so this has us call
      iscsit_reject_cmd.
      
      Note that for ERL0 the reject PDU is not actually sent, so this patch
      is not completely tested. Just verified we do not oops. The problem is the
      add reject functions return -1 which is returned all the way up to
      iscsi_target_rx_thread which for ERL0 will drop the connection.
      Signed-off-by: default avatarMike Christie <michaelc@cs.wisc.edu>
      Cc: <stable@vger.kernel.org> # v3.10+
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      b815fc12
    • Linus Torvalds's avatar
      Merge tag 'sound-4.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · cfc4957b
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Here are fixes gathered for 4.0-final; one FireFire endian fix, two
        USB-audio quirks, and three HD-audio quirks.
      
        All relatively small and device-specific fixes, should be pretty safe
        to apply"
      
      * tag 'sound-4.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb - Creative USB X-Fi Pro SB1095 volume knob support
        ALSA: hda - Fix headphone pin config for Lifebook T731
        ALSA: bebob: fix to processing in big-endian machine for sending cue
        ALSA: hda/realtek - Make more stable to get pin sense for ALC283
        ALSA: usb-audio: don't try to get Benchmark DAC1 sample rate
        ALSA: hda/realtek - Support Dell headset mode for ALC256
      cfc4957b
    • Linus Torvalds's avatar
      Merge tag 'nios2-fixes-v4.0-final' of git://git.rocketboards.org/linux-socfpga-next · 6fb805fb
      Linus Torvalds authored
      Pull arch/nios2 fixes from Ley Foon Tan:
       "There are 3 arch/nios2 fixes for 4.0 final:
      
         - fix cache coherency issue when debugging with gdb
      
         - move restart_block to struct task_struct (aligned with other
           architectures)
      
         - fix for missing registers defines for ptrace"
      
      * tag 'nios2-fixes-v4.0-final' of git://git.rocketboards.org/linux-socfpga-next:
        nios2: fix cache coherency issue when debug with gdb
        nios2: add missing ptrace registers defines
        nios2: signal: Move restart_block to struct task_struct
      6fb805fb
    • Radim Krčmář's avatar
      KVM: use slowpath for cross page cached accesses · ca3f0874
      Radim Krčmář authored
      kvm_write_guest_cached() does not mark all written pages as dirty and
      code comments in kvm_gfn_to_hva_cache_init() talk about NULL memslot
      with cross page accesses.  Fix all the easy way.
      
      The check is '<= 1' to have the same result for 'len = 0' cache anywhere
      in the page.  (nr_pages_needed is 0 on page boundary.)
      
      Fixes: 8f964525 ("KVM: Allow cross page reads and writes from cached translations.")
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      Message-Id: <20150408121648.GA3519@potion.brq.redhat.com>
      Reviewed-by: default avatarWanpeng Li <wanpeng.li@linux.intel.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      ca3f0874
    • NeilBrown's avatar
      md/raid0: fix bug with chunksize not a power of 2. · 47d68979
      NeilBrown authored
      Since commit 20d0189b
      in v3.14-rc1 RAID0 has performed incorrect calculations
      when the chunksize is not a power of 2.
      
      This happens because "sector_div()" modifies its first argument, but
      this wasn't taken into account in the patch.
      
      So restore that first arg before re-using the variable.
      Reported-by: default avatarJoe Landman <joe.landman@gmail.com>
      Reported-by: default avatarDave Chinner <david@fromorbit.com>
      Fixes: 20d0189b
      Cc: stable@vger.kernel.org (3.14 and later).
      Signed-off-by: default avatarNeilBrown <neilb@suse.de>
      47d68979
    • Ley Foon Tan's avatar
      nios2: fix cache coherency issue when debug with gdb · 4a89c308
      Ley Foon Tan authored
      Remove the end address checking for flushda function. We need to flush
      each address line for flushda instruction, from start to end address.
      This is because flushda instruction only flush the cache if tag and line
      fields are matched.
      
      Change to use ldwio instruction (bypass cache) to load the instruction
      that causing trap. Our interest is the actual instruction that executed
      by the processor, this should be uncached.
      Note, EA address might be an userspace cached address.
      Signed-off-by: default avatarLey Foon Tan <lftan@altera.com>
      4a89c308
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · e5e02de0
      Linus Torvalds authored
      Pull power management and ACPI fixes from Rafael Wysocki:
       "These are stable-candidate fixes of some recently reported issues in
        the cpufreq core, cpuidle core, the ACPI cpuidle driver and the
        hibernate core.
      
        Specifics:
      
         - Revert a 3.17 hibernate commit that was supposed to fix an issue
           related to e820 reserved regions, but broke resume from hibernation
           on Lenovo x230 (Rafael J Wysocki).
      
         - Prevent the ACPI cpuidle driver from overwriting the name and
           description of the C0 state set by the core when the list of
           C-states changes (Thomas Schlichter).
      
         - Remove the no longer needed state_count field from struct
           cpuidle_device which prevents the list of C-states shown by the
           sysfs interface from becoming incorrect when the current number of
           them is different from the number of C-states on boot (Bartlomiej
           Zolnierkiewicz).
      
         - The cpufreq core updates the policy object of the only online CPU
           during system resume to make it reflect the current hardware state,
           but it always assumes that CPU to be CPU0 which need not be the
           case, so fix the code to avoid that assumption (Viresh Kumar)"
      
      * tag 'pm+acpi-4.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        Revert "PM / hibernate: avoid unsafe pages in e820 reserved regions"
        cpuidle: ACPI: do not overwrite name and description of C0
        cpuidle: remove state_count field from struct cpuidle_device
        cpufreq: Schedule work for the first-online CPU on resume
      e5e02de0
  5. 09 Apr, 2015 5 commits
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-sleep', 'pm-cpufreq' and 'pm-cpuidle' · b2d5fb97
      Rafael J. Wysocki authored
      * pm-sleep:
        Revert "PM / hibernate: avoid unsafe pages in e820 reserved regions"
      
      * pm-cpufreq:
        cpufreq: Schedule work for the first-online CPU on resume
      
      * pm-cpuidle:
        cpuidle: ACPI: do not overwrite name and description of C0
        cpuidle: remove state_count field from struct cpuidle_device
      b2d5fb97
    • Linus Torvalds's avatar
      Merge tag 'pci-v4.0-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 3cfb2f79
      Linus Torvalds authored
      Pull PCI fixes from Bjorn Helgaas:
       "Here are some fixes for v4.0.  I apologize for how late they are.  We
        were hoping for some better fixes, but couldn't get them polished in
        time.  These fix:
      
         - a Xen domU oops with PCI passthrough devices
         - a sparc T5 boot failure
         - a STM SPEAr13xx crash (use after initdata freed)
         - a cpcihp hotplug driver thinko
         - an AER thinko that printed stack junk
      
        Details:
      
        Enumeration
          - Don't look for ACPI hotplug parameters if ACPI is disabled (Bjorn Helgaas)
      
        Resource management
          - Revert "sparc/PCI: Clip bridge windows to fit in upstream windows" (Bjorn Helgaas)
      
        AER
          - Avoid info leak in __print_tlp_header() (Rasmus Villemoes)
      
        PCI device hotplug
          - Add missing curly braces in cpci_configure_slot() (Dan Carpenter)
      
        ST Microelectronics SPEAr13xx host bridge driver
          - Drop __initdata from spear13xx_pcie_driver (Matwey V. Kornilov)
      
      * tag 'pci-v4.0-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        Revert "sparc/PCI: Clip bridge windows to fit in upstream windows"
        PCI: Don't look for ACPI hotplug parameters if ACPI is disabled
        PCI: cpcihp: Add missing curly braces in cpci_configure_slot()
        PCI/AER: Avoid info leak in __print_tlp_header()
        PCI: spear: Drop __initdata from spear13xx_pcie_driver
      3cfb2f79
    • Dmitry M. Fedin's avatar
      ALSA: usb - Creative USB X-Fi Pro SB1095 volume knob support · 3dc8523f
      Dmitry M. Fedin authored
      Adds an entry for Creative USB X-Fi to the rc_config array in
      mixer_quirks.c to allow use of volume knob on the device.
      Adds support for newer X-Fi Pro card, known as "Model No. SB1095"
      with USB ID "041e:3237"
      Signed-off-by: default avatarDmitry M. Fedin <dmitry.fedin@gmail.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      3dc8523f
    • Al Viro's avatar
      ocfs2: _really_ sync the right range · 64b4e252
      Al Viro authored
      "ocfs2 syncs the wrong range" had been broken; prior to it the
      code was doing the wrong thing in case of O_APPEND, all right,
      but _after_ it we were syncing the wrong range in 100% cases.
      *ppos, aka iocb->ki_pos is incremented prior to that point,
      so we are always doing sync on the area _after_ the one we'd
      written to.
      
      Spotted by Joseph Qi <joseph.qi@huawei.com> back in January;
      unfortunately, I'd missed his mail back then ;-/
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      64b4e252
    • Ley Foon Tan's avatar
      nios2: add missing ptrace registers defines · e3e29f99
      Ley Foon Tan authored
      These are all register available in nios2.
      Signed-off-by: default avatarLey Foon Tan <lftan@altera.com>
      e3e29f99
  6. 08 Apr, 2015 9 commits
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 20624d17
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Final drm fixes: one core locking imbalance regression, and a bunch of
        i915 baytrail s/r fixes"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm: fix drm_mode_getconnector() locking imbalance regression
        drm/i915/vlv: remove wait for previous GFX clk disable request
        drm/i915/chv: Remove Wait for a previous gfx force-off
        drm/i915/vlv: save/restore the power context base reg
      20624d17
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · 9a08da1c
      Linus Torvalds authored
      Pull ceph revert from Sage Weil:
       "This corrects a recent misadventure with __GFP_MEMALLOC and
        PF_MEMALLOC; it turns out it's not a good fit for RBD and we're better
        off relying on dirty page throttling"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        Revert "libceph: use memalloc flags for net IO"
      9a08da1c
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · b97fdef8
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "Three fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm: numa: disable change protection for vma(VM_HUGETLB)
        include/linux/dmapool.h: declare struct device
        mm: move zone lock to a different cache line than order-0 free page lists
      b97fdef8
    • Linus Torvalds's avatar
      Copy the kernel module data from user space in chunks · 3afe9f84
      Linus Torvalds authored
      Unlike most (all?) other copies from user space, kernel module loading
      is almost unlimited in size.  So we do a potentially huge
      "copy_from_user()" when we copy the module data from user space to the
      kernel buffer, which can be a latency concern when preemption is
      disabled (or voluntary).
      
      Also, because 'copy_from_user()' clears the tail of the kernel buffer on
      failures, even a *failed* copy can end up wasting a lot of time.
      
      Normally neither of these are concerns in real life, but they do trigger
      when doing stress-testing with trinity.  Running in a VM seems to add
      its own overheadm causing trinity module load testing to even trigger
      the watchdog.
      
      The simple fix is to just chunk up the module loading, so that it never
      tries to copy insanely big areas in one go.  That bounds the latency,
      and also the amount of (unnecessarily, in this case) cleared memory for
      the failure case.
      Reported-by: default avatarSasha Levin <sasha.levin@oracle.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3afe9f84
    • Linus Torvalds's avatar
      x86: clean up/fix 'copy_in_user()' tail zeroing · cae2a173
      Linus Torvalds authored
      The rule for 'copy_from_user()' is that it zeroes the remaining kernel
      buffer even when the copy fails halfway, just to make sure that we don't
      leave uninitialized kernel memory around.  Because even if we check for
      errors, some kernel buffers stay around after thge copy (think page
      cache).
      
      However, the x86-64 logic for user copies uses a copy_user_generic()
      function for all the cases, that set the "zerorest" flag for any fault
      on the source buffer.  Which meant that it didn't just try to clear the
      kernel buffer after a failure in copy_from_user(), it also tried to
      clear the destination user buffer for the "copy_in_user()" case.
      
      Not only is that pointless, it also means that the clearing code has to
      worry about the tail clearing taking page faults for the user buffer
      case.  Which is just stupid, since that case shouldn't happen in the
      first place.
      
      Get rid of the whole "zerorest" thing entirely, and instead just check
      if the destination is in kernel space or not.  And then just use
      memset() to clear the tail of the kernel buffer if necessary.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cae2a173
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2015-04-08' of git://anongit.freedesktop.org/drm-intel into drm-fixes · f4274e23
      Dave Airlie authored
      three commits, all cc: stable, to address Baytrail
      suspend/resume issues.
      
      * tag 'drm-intel-fixes-2015-04-08' of git://anongit.freedesktop.org/drm-intel:
        drm/i915/vlv: remove wait for previous GFX clk disable request
        drm/i915/chv: Remove Wait for a previous gfx force-off
        drm/i915/vlv: save/restore the power context base reg
      f4274e23
    • Al Viro's avatar
    • Al Viro's avatar
      [regression] ocfs2: do *not* increment ->ki_pos twice · cf1b5ea1
      Al Viro authored
      generic_file_direct_write() already does that.  Broken by
      "ocfs2: do not fallback to buffer I/O write if appending"
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      cf1b5ea1
    • Takashi Iwai's avatar
      ALSA: hda - Fix headphone pin config for Lifebook T731 · cc7016ab
      Takashi Iwai authored
      Some BIOS version of Fujitsu Lifebook T731 seems to set up the
      headphone pin (0x21) without the assoc number 0x0f while it's set only
      to the output on the docking port (0x1a).  With the recent commit
      [03ad6a8c: ALSA: hda - Fix "PCM" name being used on one DAC when
       there are two DACs], this resulted in the weird mixer element
      mapping where the headphone on the laptop is assigned as a shared
      volume with the speaker and the docking port is assigned as an
      individual headphone.
      
      This patch improves the situation by correcting the headphone pin
      config to the more appropriate value.
      Reported-and-tested-by: default avatarTaylor Smock <smocktaylor@gmail.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      cc7016ab