1. 21 Dec, 2017 7 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 9035a896
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "It's been a few weeks, so here's a small collection of fixes that
        should go into the current series.
      
        This contains:
      
         - NVMe pull request from Christoph, with a few important fixes.
      
         - kyber hang fix from Omar.
      
         - A blk-throttl fix from Shaohua, fixing a case where we double
           charge a bio.
      
         - Two call_single_data alignment fixes from me, fixing up some
           unfortunate changes that went into 4.14 without being properly
           reviewed on the block side (since nobody was CC'ed on the
           patch...).
      
         - A bounce buffer fix in two parts, one from me and one from Ming.
      
         - Revert bdi debug error handling patch. It's causing boot issues for
           some folks, and a week down the line, we're still no closer to a
           fix. Revert this patch for now until it's figured out, then we can
           retry for 4.16"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        Revert "bdi: add error handle for bdi_debug_register"
        null_blk: unalign call_single_data
        block: unalign call_single_data in struct request
        block-throttle: avoid double charge
        block: fix blk_rq_append_bio
        block: don't let passthrough IO go into .make_request_fn()
        nvme: setup streams after initializing namespace head
        nvme: check hw sectors before setting chunk sectors
        nvme: call blk_integrity_unregister after queue is cleaned up
        nvme-fc: remove double put reference if admin connect fails
        nvme: set discard_alignment to zero
        kyber: fix another domain token wait queue hang
      9035a896
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 409232a4
      Linus Torvalds authored
      Pull KVM fixes from Paolo Bonzini:
       "ARM fixes:
         - A bug in handling of SPE state for non-vhe systems
         - A fix for a crash on system shutdown
         - Three timer fixes, introduced by the timer optimizations for v4.15
      
        x86 fixes:
         - fix for a WARN that was introduced in 4.15
         - fix for SMM when guest uses PCID
         - fixes for several bugs found by syzkaller
      
        ... and a dozen papercut fixes for the kvm_stat tool"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (22 commits)
        tools/kvm_stat: sort '-f help' output
        kvm: x86: fix RSM when PCID is non-zero
        KVM: Fix stack-out-of-bounds read in write_mmio
        KVM: arm/arm64: Fix timer enable flow
        KVM: arm/arm64: Properly handle arch-timer IRQs after vtimer_save_state
        KVM: arm/arm64: timer: Don't set irq as forwarded if no usable GIC
        KVM: arm/arm64: Fix HYP unmapping going off limits
        arm64: kvm: Prevent restoring stale PMSCR_EL1 for vcpu
        KVM/x86: Check input paging mode when cs.l is set
        tools/kvm_stat: add line for totals
        tools/kvm_stat: stop ignoring unhandled arguments
        tools/kvm_stat: suppress usage information on command line errors
        tools/kvm_stat: handle invalid regular expressions
        tools/kvm_stat: add hint on '-f help' to man page
        tools/kvm_stat: fix child trace events accounting
        tools/kvm_stat: fix extra handling of 'help' with fields filter
        tools/kvm_stat: fix missing field update after filter change
        tools/kvm_stat: fix drilldown in events-by-guests mode
        tools/kvm_stat: fix command line option '-g'
        kvm: x86: fix WARN due to uninitialized guest FPU state
        ...
      409232a4
    • Jens Axboe's avatar
      Revert "bdi: add error handle for bdi_debug_register" · 6d0e4827
      Jens Axboe authored
      This reverts commit a0747a85.
      
      It breaks some booting for some users, and more than a week
      into this, there's still no good fix. Revert this commit
      for now until a solution has been found.
      Reported-by: default avatarLaura Abbott <labbott@redhat.com>
      Reported-by: default avatarBruno Wolff III <bruno@wolff.to>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      6d0e4827
    • Stefan Raspl's avatar
      tools/kvm_stat: sort '-f help' output · aa12f594
      Stefan Raspl authored
      Sort the fields returned by specifying '-f help' on the command line.
      While at it, simplify the code a bit, indent the output and eliminate an
      extra blank line at the beginning.
      Signed-off-by: default avatarStefan Raspl <raspl@linux.vnet.ibm.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      aa12f594
    • Paolo Bonzini's avatar
      kvm: x86: fix RSM when PCID is non-zero · fae1a3e7
      Paolo Bonzini authored
      rsm_load_state_64() and rsm_enter_protected_mode() load CR3, then
      CR4 & ~PCIDE, then CR0, then CR4.
      
      However, setting CR4.PCIDE fails if CR3[11:0] != 0.  It's probably easier
      in the long run to replace rsm_enter_protected_mode() with an emulator
      callback that sets all the special registers (like KVM_SET_SREGS would
      do).  For now, set the PCID field of CR3 only after CR4.PCIDE is 1.
      Reported-by: default avatarLaszlo Ersek <lersek@redhat.com>
      Tested-by: default avatarLaszlo Ersek <lersek@redhat.com>
      Fixes: 660a5d51
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      fae1a3e7
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · d1ce8ceb
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Two simple fixes: one for sparse warnings that were introduced by the
        merge window conversion to blist_flags_t and the other to fix dropped
        I/O during reset in aacraid"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: aacraid: Fix I/O drop during reset
        scsi: core: Use blist_flags_t consistently
      d1ce8ceb
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm · 877631f3
      Linus Torvalds authored
      Pull ARM fix from Russell King:
       "Just one fix for a problem in the csum_partial_copy_from_user()
        implementation when software PAN is enabled"
      
      * 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: 8731/1: Fix csum_partial_copy_from_user() stack mismatch
      877631f3
  2. 20 Dec, 2017 11 commits
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 1362d628
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "These fix a recently introduced issue in the ACPI CPPC driver and an
        obscure error hanling bug in the APEI code.
      
        Specifics:
      
         - Fix an error handling issue in the ACPI APEI implementation of the
           >read callback in struct pstore_info (Takashi Iwai).
      
         - Fix a possible out-of-bounds arrar read in the ACPI CPPC driver
           (Colin Ian King)"
      
      * tag 'acpi-4.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: APEI / ERST: Fix missing error handling in erst_reader()
        ACPI: CPPC: remove initial assignment of pcc_ss_data
      1362d628
    • Linus Torvalds's avatar
      Merge tag 'pm-4.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 9cd238ab
      Linus Torvalds authored
      Pull power management fixes from Rafael Wysocki:
       "These fix a regression in the ondemand and conservative cpufreq
        governors that was introduced during the 4.13 cycle, a recent
        regression in the imx6q cpufreq driver and a regression in the PCI
        handling of hibernation from the 4.14 cycle.
      
        Specifics:
      
         - Fix an issue in the PCI handling of the "thaw" transition during
           hibernation (after creating an image), introduced by a bug fix from
           the 4.13 cycle and exposed by recent changes in the IRQ subsystem,
           that caused pci_restore_state() to be called for devices in
           low-power states in some cases which is incorrect and breaks MSI
           management on some systems (Rafael Wysocki).
      
         - Fix a recent regression in the imx6q cpufreq driver that broke
           speed grading on i.MX6 QuadPlus by omitting checks causing invalid
           operating performance points (OPPs) to be disabled on that SoC as
           appropriate (Lucas Stach).
      
         - Fix a regression introduced during the 4.14 cycle in the ondemand
           and conservative cpufreq governors that causes the sampling
           interval used by them to be shorter than the tick period in some
           cases which leads to incorrect decisions (Rafael Wysocki)"
      
      * tag 'pm-4.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: governor: Ensure sufficiently large sampling intervals
        cpufreq: imx6q: fix speed grading regression on i.MX6 QuadPlus
        PCI / PM: Force devices to D0 in pci_pm_thaw_noirq()
      9cd238ab
    • Linus Torvalds's avatar
      Merge tag 'spi-fix-v4.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 7887f470
      Linus Torvalds authored
      Pull spi fixes from Mark Brown:
       "A bunch of really small fixes here, all driver specific and mostly in
        error handling and remove paths.
      
        The most important fixes are for the a3700 clock configuration and a
        fix for a nasty stall which could potentially cause data corruption
        with the xilinx driver"
      
      * tag 'spi-fix-v4.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: atmel: fixed spin_lock usage inside atmel_spi_remove
        spi: sun4i: disable clocks in the remove function
        spi: rspi: Do not set SPCR_SPE in qspi_set_config_register()
        spi: Fix double "when"
        spi: a3700: Fix clk prescaling for coefficient over 15
        spi: xilinx: Detect stall with Unknown commands
        spi: imx: Update device tree binding documentation
      7887f470
    • Linus Torvalds's avatar
      Merge tag 'mfd-fixes-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 444fec19
      Linus Torvalds authored
      Pull MDF bugfixes from Lee Jones:
      
        - Fix message timing issues and report correct state when an error
          occurs in cros_ec_spi
      
        - Reorder enums used for Power Management in rtsx_pci
      
        - Use correct OF helper for obtaining child nodes in twl4030-audio and
          twl6040
      
      * tag 'mfd-fixes-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd:
        mfd: Fix RTS5227 (and others) powermanagement
        mfd: cros ec: spi: Fix "in progress" error signaling
        mfd: twl6040: Fix child-node lookup
        mfd: twl4030-audio: Fix sibling-node lookup
        mfd: cros ec: spi: Don't send first message too soon
      444fec19
    • Linus Torvalds's avatar
      Merge tag 'sound-4.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · a5f89a50
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "All stable fixes here:
      
         - a regression fix of USB-audio for the previous hardening patch
      
         - a potential UAF fix in rawmidi
      
         - HD-audio and USB-audio quirks, the missing new ID"
      
      * tag 'sound-4.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Fix the missing ctl name suffix at parsing SU
        ALSA: hda/realtek - Fix Dell AIO LineOut issue
        ALSA: rawmidi: Avoid racy info ioctl via ctl device
        ALSA: hda - Add vendor id for Cannonlake HDMI codec
        ALSA: usb-audio: Add native DSD support for Esoteric D-05X
      a5f89a50
    • Jens Axboe's avatar
      null_blk: unalign call_single_data · 0864fe09
      Jens Axboe authored
      Commit 966a9671 randomly added alignment to this structure, but
      it's actually detrimental to performance of null_blk. Test case:
      
      Running on both the home and remote node shows a ~5% degradation
      in performance.
      
      While in there, move blk_status_t to the hole after the integer tag
      in the nullb_cmd structure. After this patch, we shrink the size
      from 192 to 152 bytes.
      
      Fixes: 966a9671 ("smp: Avoid using two cache lines for struct call_single_data")
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      0864fe09
    • Jens Axboe's avatar
      block: unalign call_single_data in struct request · 4ccafe03
      Jens Axboe authored
      A previous change blindly added massive alignment to the
      call_single_data structure in struct request. This ballooned it in size
      from 296 to 320 bytes on my setup, for no valid reason at all.
      
      Use the unaligned struct __call_single_data variant instead.
      
      Fixes: 966a9671 ("smp: Avoid using two cache lines for struct call_single_data")
      Cc: stable@vger.kernel.org # v4.14
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      4ccafe03
    • Shaohua Li's avatar
      block-throttle: avoid double charge · 111be883
      Shaohua Li authored
      If a bio is throttled and split after throttling, the bio could be
      resubmited and enters the throttling again. This will cause part of the
      bio to be charged multiple times. If the cgroup has an IO limit, the
      double charge will significantly harm the performance. The bio split
      becomes quite common after arbitrary bio size change.
      
      To fix this, we always set the BIO_THROTTLED flag if a bio is throttled.
      If the bio is cloned/split, we copy the flag to new bio too to avoid a
      double charge. However, cloned bio could be directed to a new disk,
      keeping the flag be a problem. The observation is we always set new disk
      for the bio in this case, so we can clear the flag in bio_set_dev().
      
      This issue exists for a long time, arbitrary bio size change just makes
      it worse, so this should go into stable at least since v4.2.
      
      V1-> V2: Not add extra field in bio based on discussion with Tejun
      
      Cc: Vivek Goyal <vgoyal@redhat.com>
      Cc: stable@vger.kernel.org
      Acked-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarShaohua Li <shli@fb.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      111be883
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-cppc' · 9245fe9f
      Rafael J. Wysocki authored
      * acpi-cppc:
        ACPI: CPPC: remove initial assignment of pcc_ss_data
      9245fe9f
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-pci' · 63d15e8c
      Rafael J. Wysocki authored
      * pm-pci:
        PCI / PM: Force devices to D0 in pci_pm_thaw_noirq()
      63d15e8c
    • Kees Cook's avatar
      Do not hash userspace addresses in fault handlers · 10a7e9d8
      Kees Cook authored
      The hashing of %p was designed to restrict kernel addresses. There is
      no reason to hash the userspace values seen during a segfault report,
      so switch these to %px. (Some architectures already use %lx.)
      
      Fixes: ad67b74d ("printk: hash addresses printed with %p")
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      10a7e9d8
  3. 19 Dec, 2017 4 commits
    • Mark Brown's avatar
      Merge remote-tracking branches 'spi/fix/armada', 'spi/fix/atmel',... · 4d029763
      Mark Brown authored
      Merge remote-tracking branches 'spi/fix/armada', 'spi/fix/atmel', 'spi/fix/doc', 'spi/fix/imx', 'spi/fix/rspi', 'spi/fix/sun4i' and 'spi/fix/xilinx' into spi-linus
      4d029763
    • Radu Pirea's avatar
      spi: atmel: fixed spin_lock usage inside atmel_spi_remove · 66e900a3
      Radu Pirea authored
      The only part of atmel_spi_remove which needs to be atomic is hardware
      reset.
      
      atmel_spi_stop_dma calls dma_terminate_all and this needs interrupts
      enabled.
      atmel_spi_release_dma calls dma_release_channel and dma_release_channel
      locks a mutex inside of spin_lock.
      
      So the call of these functions can't be inside a spin_lock.
      Reported-by: default avatarJia-Ju Bai <baijiaju1990@gmail.com>
      Signed-off-by: default avatarRadu Pirea <radu.pirea@microchip.com>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      66e900a3
    • Takashi Iwai's avatar
      ALSA: usb-audio: Fix the missing ctl name suffix at parsing SU · 5a15f289
      Takashi Iwai authored
      The commit 89b89d12 ("ALSA: usb-audio: Add check return value for
      usb_string()") added the check of the return value from
      snd_usb_copy_string_desc(), which is correct per se, but it introduced
      a regression.  In the original code, either the "Clock Source",
      "Playback Source" or "Capture Source" suffix is added after the
      terminal string, while the commit changed it to add the suffix only
      when get_term_name() is failing.  It ended up with an incorrect ctl
      name like "PCM" instead of "PCM Capture Source".
      
      Also, even the original code has a similar bug: when the ctl name is
      generated from snd_usb_copy_string_desc() for the given iSelector, it
      also doesn't put the suffix.
      
      This patch addresses these issues: the suffix is added always when no
      static mapping is found.  Also the patch tries to put more comments
      and cleans up the if/else block for better readability in order to
      avoid the same pitfall again.
      
      Fixes: 89b89d12 ("ALSA: usb-audio: Add check return value for usb_string()")
      Reported-and-tested-by: default avatarMauro Santos <registo.mailling@gmail.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      5a15f289
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20171218' of git://git.infradead.org/linux-mtd · ace52288
      Linus Torvalds authored
      Pull MTD fixes from Richard Weinberger:
       "This contains the following regression fixes:
      
         - fix bitflip handling in brcmnand and gpmi nand drivers
      
         - revert a bad device tree binding for spi-nor
      
         - fix a copy&paste error in gpio-nand driver
      
         - fix a too strict length check in mtd core"
      
      * tag 'for-linus-20171218' of git://git.infradead.org/linux-mtd:
        mtd: Fix mtd_check_oob_ops()
        mtd: nand: gpio: Fix ALE gpio configuration
        mtd: nand: brcmnand: Zero bitflip is not an error
        mtd: nand: gpmi: Fix failure when a erased page has a bitflip at BBM
        Revert "dt-bindings: mtd: add sst25wf040b and en25s64 to sip-nor list"
      ace52288
  4. 18 Dec, 2017 18 commits