Skip to content
  1. Feb 04, 2017
  2. Feb 01, 2017
  3. Jan 27, 2017
  4. Jan 25, 2017
    • Vincent Pelletier's avatar
      usb: gadget: f_fs: Assorted buffer overflow checks. · 83e526f2
      Vincent Pelletier authored
      
      
      OS descriptor head, when flagged as provided, is accessed without
      checking if it fits in provided buffer. Verify length before access.
      Also, there are other places where buffer length it checked
      after accessing offsets which are potentially past the end. Check
      buffer length before as well to fail cleanly.
      
      Signed-off-by: default avatarVincent Pelletier <plr.vincent@gmail.com>
      Acked-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      83e526f2
    • Lukáš Lalinský's avatar
      USB: Add quirk for WORLDE easykey.25 MIDI keyboard · d9b2997e
      Lukáš Lalinský authored
      
      
      Add a quirk for WORLDE easykey.25 MIDI keyboard (idVendor=0218,
      idProduct=0401). The device reports that it has config string
      descriptor at index 3, but when the system selects the configuration
      and tries to get the description, it returns a -EPROTO error,
      the communication restarts and this keeps repeating over and over again.
      Not requesting the string descriptor makes the device work correctly.
      
      Relevant info from Wireshark:
      
      [...]
      
      CONFIGURATION DESCRIPTOR
          bLength: 9
          bDescriptorType: 0x02 (CONFIGURATION)
          wTotalLength: 101
          bNumInterfaces: 2
          bConfigurationValue: 1
          iConfiguration: 3
          Configuration bmAttributes: 0xc0  SELF-POWERED  NO REMOTE-WAKEUP
              1... .... = Must be 1: Must be 1 for USB 1.1 and higher
              .1.. .... = Self-Powered: This device is SELF-POWERED
              ..0. .... = Remote Wakeup: This device does NOT support remote wakeup
          bMaxPower: 50  (100mA)
      
      [...]
      
           45 0.369104       host                  2.38.0                USB      64     GET DESCRIPTOR Request STRING
      
      [...]
      
      URB setup
          bmRequestType: 0x80
              1... .... = Direction: Device-to-host
              .00. .... = Type: Standard (0x00)
              ...0 0000 = Recipient: Device (0x00)
          bRequest: GET DESCRIPTOR (6)
          Descriptor Index: 0x03
          bDescriptorType: 0x03
          Language Id: English (United States) (0x0409)
          wLength: 255
      
           46 0.369255       2.38.0                host                  USB      64     GET DESCRIPTOR Response STRING[Malformed Packet]
      
      [...]
      
      Frame 46: 64 bytes on wire (512 bits), 64 bytes captured (512 bits) on interface 0
      USB URB
          [Source: 2.38.0]
          [Destination: host]
          URB id: 0xffff88021f62d480
          URB type: URB_COMPLETE ('C')
          URB transfer type: URB_CONTROL (0x02)
          Endpoint: 0x80, Direction: IN
          Device: 38
          URB bus id: 2
          Device setup request: not relevant ('-')
          Data: present (0)
          URB sec: 1484896277
          URB usec: 455031
          URB status: Protocol error (-EPROTO) (-71)
          URB length [bytes]: 0
          Data length [bytes]: 0
          [Request in: 45]
          [Time from request: 0.000151000 seconds]
          Unused Setup Header
          Interval: 0
          Start frame: 0
          Copy of Transfer Flags: 0x00000200
          Number of ISO descriptors: 0
      [Malformed Packet: USB]
          [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
              [Malformed Packet (Exception occurred)]
              [Severity level: Error]
              [Group: Malformed]
      
      Signed-off-by: default avatarLukáš Lalinský <lukas@oxygene.sk>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d9b2997e
    • Tony Lindgren's avatar
      usb: musb: Fix external abort on non-linefetch for musb_irq_work() · 3ba7b779
      Tony Lindgren authored
      
      
      While testing musb host mode cable plugging on a BeagleBone, I came across this
      error:
      
      Unhandled fault: external abort on non-linefetch (0x1008) at 0xd1dcfc60
      ...
      [<bf668390>] (musb_default_readb [musb_hdrc]) from [<bf668578>] (musb_irq_work+0x1c/0x180 [musb_hdrc])
      [<bf668578>] (musb_irq_work [musb_hdrc]) from [<c0156554>] (process_one_work+0x2b4/0x808)
      [<c0156554>] (process_one_work) from [<c015767c>] (worker_thread+0x3c/0x550)
      [<c015767c>] (worker_thread) from [<c015d568>] (kthread+0x104/0x148)
      [<c015d568>] (kthread) from [<c01078d0>] (ret_from_fork+0x14/0x24)
      
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarBin Liu <b-liu@ti.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3ba7b779
    • Tony Lindgren's avatar
      usb: musb: Fix host mode error -71 regression · 407788b5
      Tony Lindgren authored
      Commit 467d5c98 ("usb: musb: Implement session bit based runtime PM for
      musb-core") started implementing musb generic runtime PM support by
      introducing devctl register session bit based state control.
      
      This caused a regression where if a USB mass storage device is connected
      to a USB hub, we can get:
      
      usb 1-1: reset high-speed USB device number 2 using musb-hdrc
      usb 1-1: device descriptor read/64, error -71
      usb 1-1.1: new high-speed USB device number 4 using musb-hdrc
      
      This is because before the USB storage device is connected, musb is
      in OTG_STATE_A_SUSPEND. And we currently only set need_finish_resume
      in musb_stage0_irq() and the related code calling finish_resume_work
      in musb_resume() and musb_runtime_resume() never gets called.
      
      To fix the issue, we can call schedule_delayed_work() directly in
      musb_stage0_irq() to have finish_resume_work run.
      
      And we should no longer never get interrupts when when suspended.
      We have changed musb to no longer need pm_runtime_irqsafe().
      The need_finish_resume flag was added in commit 9298b4aa ("usb:
      musb: fix device hotplug behind hub") and no longer applies as far
      as I can tell. So let's just remove the earlier code that no longer
      is needed.
      
      Fixes: 467d5c98
      
       ("usb: musb: Implement session bit based runtime PM for musb-core")
      Reported-by: default avatarBin Liu <b-liu@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarBin Liu <b-liu@ti.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      407788b5
  5. Jan 24, 2017
  6. Jan 23, 2017
  7. Jan 22, 2017
    • Linus Torvalds's avatar
      Merge tag 'usb-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · c497f8d1
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are a few small USB fixes for 4.10-rc5.
      
        Most of these are gadget/dwc2 fixes for reported issues, all of these
        have been in linux-next for a while. The last one is a single xhci
        WARN_ON removal to handle an issue that the dwc3 driver is hitting in
        the 4.10-rc tree. The warning is harmless and needs to be removed, and
        a "real" fix that is more complex will show up in 4.11-rc1 for this
        device.
      
        That last patch hasn't been in linux-next yet due to the weekend
        timing, but it's a "simple" WARN_ON() removal so what could go wrong?
        :)"
      
      Famous last words.
      
      * tag 'usb-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        xhci: remove WARN_ON if dma mask is not set for platform devices
        usb: dwc2: host: fix Wmaybe-uninitialized warning
        usb: dwc2: gadget: Fix GUSBCFG.USBTRDTIM value
        usb: gadget: udc: atmel: remove memory leak
        usb: dwc3: exynos fix axius clock error path to do cleanup
        usb: dwc2: Avoid suspending if we're in gadget mode
        usb: dwc2: use u32 for DT binding parameters
        usb: gadget: f_fs: Fix iterations on endpoints.
        usb: dwc2: gadget: Fix DMA memory freeing
        usb: gadget: composite: Fix function used to free memory
      c497f8d1
    • Linus Torvalds's avatar
      Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · f68d8531
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
       "Two fixes:
      
         - a regression fix for the multiple-pmem-namespace-per-region support
           added in 4.9. Even if an existing environment is not using that
           feature the act of creating and a destroying a single namespace
           with the ndctl utility will lead to the proliferation of extra
           unwanted namespace devices.
      
         - a fix for the error code returned from the pmem driver when the
           memcpy_mcsafe() routine returns -EFAULT. Btrfs seems to be the only
           block I/O consumer that tries to parse the meaning of the error
           code when it is non-zero.
      
        Neither of these fixes are critical, the namespace leak is awkward in
        that it can cause device naming to change and complicates debugging
        namespace initialization issues. The error code fix is included out of
        caution for what other consumers might be expecting -EIO for block I/O
        errors"
      
      * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        libnvdimm, namespace: fix pmem namespace leak, delete when size set to zero
        pmem: return EIO on read_pmem() failure
      f68d8531
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · f5e8c0ff
      Linus Torvalds authored
      Pull clk fix from Stephen Boyd:
       "One fix for Samsung Exynos524x SoCs where recent IOMMU patches have
        caused some of these clocks to turn off when they were always left on
        before"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk/samsung: exynos542x: mark some clocks as critical
      f5e8c0ff
    • Linus Torvalds's avatar
      Merge tag 'arc-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 455a70cb
      Linus Torvalds authored
      Pull ARC fixes from Vineet Gupta:
      
       - more intc updates [Yuriv]
      
       - fix module build when unwinder is turned off
      
       - IO Coherency Programming model updates
      
       - other miscellaneous
      
      * tag 'arc-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: Revert "ARC: mm: IOC: Don't enable IOC by default"
        ARC: mm: split arc_cache_init to allow __init reaping of bulk
        ARCv2: IOC: Use actual memory size to setup aperture size
        ARCv2: IOC: Adhere to progamming model guidelines to avoid DMA corruption
        ARCv2: IOC: refactor the IOC and SLC operations into own functions
        ARC: module: Fix !CONFIG_ARC_DW2_UNWIND builds
        ARCv2: save r30 on kernel entry as gcc uses it for code-gen
        ARCv2: IRQ: Call entry/exit functions for chained handlers in MCIP
        ARC: IRQ: Use hwirq instead of virq in mask/unmask
        ARC: mmu: clarify the MMUv3 programming model
      455a70cb
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 83fd57a7
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       "Two fixes for fallout from the hugetlb changes we merged this cycle.
      
        Ten other fixes, four only affect Power9, and the rest are a bit of a
        mixture though nothing terrible.
      
        Thanks to: Aneesh Kumar K.V, Anton Blanchard, Benjamin Herrenschmidt,
        Dave Martin, Gavin Shan, Madhavan Srinivasan, Nicholas Piggin, Reza
        Arbab"
      
      * tag 'powerpc-4.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc: Ignore reserved field in DCSR and PVR reads and writes
        powerpc/ptrace: Preserve previous TM fprs/vsrs on short regset write
        powerpc/ptrace: Preserve previous fprs/vsrs on short regset write
        powerpc/perf: Use MSR to report privilege level on P9 DD1
        selftest/powerpc: Wrong PMC initialized in pmc56_overflow test
        powerpc/eeh: Enable IO path on permanent error
        powerpc/perf: Fix PM_BRU_CMPL event code for power9
        powerpc/mm: Fix little-endian 4K hugetlb
        powerpc/mm/hugetlb: Don't panic when we don't find the default huge page size
        powerpc: Fix pgtable pmd cache init
        powerpc/icp-opal: Fix missing KVM case and harden replay
        powerpc/mm: Fix memory hotplug BUG() on radix
      83fd57a7
  8. Jan 21, 2017
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 4c9eff7a
      Linus Torvalds authored
      Pull KVM fixes from Radim Krčmář:
       "ARM:
         - Fix for timer setup on VHE machines
         - Drop spurious warning when the timer races against the vcpu running
           again
         - Prevent a vgic deadlock when the initialization fails (for stable)
      
        s390:
         - Fix a kernel memory exposure (for stable)
      
        x86:
         - Fix exception injection when hypercall instruction cannot be
           patched"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: s390: do not expose random data via facility bitmap
        KVM: x86: fix fixing of hypercalls
        KVM: arm/arm64: vgic: Fix deadlock on error handling
        KVM: arm64: Access CNTHCTL_EL2 bit fields correctly on VHE systems
        KVM: arm/arm64: Fix occasional warning from the timer work function
      4c9eff7a
    • Linus Torvalds's avatar
      Merge branch 'scsi-target-for-v4.10' of... · 51162264
      Linus Torvalds authored
      Merge branch 'scsi-target-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bvanassche/linux
      
      Pull SCSI target fixes from Bart Van Assche:
      
       - two small fixes for the ibmvscsis driver
      
       - ten patches with bug fixes for the target mode of the qla2xxx driver
      
       - four patches that avoid that the "sparse" and "smatch" static
         analyzer tools report false positives for the qla2xxx code base
      
      * 'scsi-target-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bvanassche/linux:
        qla2xxx: Disable out-of-order processing by default in firmware
        qla2xxx: Fix erroneous invalid handle message
        qla2xxx: Reduce exess wait during chip reset
        qla2xxx: Terminate exchange if corrupted
        qla2xxx: Fix crash due to null pointer access
        qla2xxx: Collect additional information to debug fw dump
        qla2xxx: Reset reserved field in firmware options to 0
        qla2xxx: Set tcm_qla2xxx version to automatically track qla2xxx version
        qla2xxx: Include ATIO queue in firmware dump when in target mode
        qla2xxx: Fix wrong IOCB type assumption
        qla2xxx: Avoid that building with W=1 triggers complaints about set-but-not-used variables
        qla2xxx: Move two arrays from header files to .c files
        qla2xxx: Declare an array with file scope static
        qla2xxx: Fix indentation
        ibmvscsis: Fix sleeping in interrupt context
        ibmvscsis: Fix max transfer length
      51162264
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · e3737b91
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "Just two small fixes for this -rc.
      
        One is just killing an unused variable from Keith, but the other
        fixes a performance regression for nbd in this series, where we
        inadvertently flipped when we set MSG_MORE when outputting data"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        nbd: only set MSG_MORE when we have more to send
        blk-mq: Remove unused variable
      e3737b91
    • Linus Torvalds's avatar
      Merge tag 'spi-fix-v4.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · cca112ec
      Linus Torvalds authored
      Pull spi fixes from Mark Brown:
       "The usual small smattering of driver specific fixes. A few bits that
        stand out here:
      
         - the R-Car patches adding fallbacks are just adding new compatible
           strings to the driver so that device trees are written in a more
           robustly future proof fashion, this isn't strictly a fix but it's
           just new IDs and it's better to get it into mainline sooner to
           improve the ABI
      
         - the DesignWare "switch to new API part 2" patch is actually a
           misleadingly titled fix for a bit that got missed in the original
           conversion"
      
      * tag 'spi-fix-v4.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: davinci: use dma_mapping_error()
        spi: spi-axi: Free resources on error path
        spi: pxa2xx: add missed break
        spi: dw-mid: switch to new dmaengine_terminate_* API (part 2)
        spi: dw: Make debugfs name unique between instances
        spi: sh-msiof: Do not use C++ style comment
        spi: armada-3700: Set mode bits correctly
        spi: armada-3700: fix unsigned compare than zero on irq
        spi: sh-msiof: Add R-Car Gen 2 and 3 fallback bindings
        spi: SPI_FSL_DSPI should depend on HAS_DMA
      cca112ec
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-4.10-rc5' of git://github.com/ceph/ceph-client · e90665a5
      Linus Torvalds authored
      Pull ceph fixes from Ilya Dryomov:
       "Three filesystem endianness fixes (one goes back to the 2.6 era, all
        marked for stable) and two fixups for this merge window's patches"
      
      * tag 'ceph-for-4.10-rc5' of git://github.com/ceph/ceph-client:
        ceph: fix bad endianness handling in parse_reply_info_extra
        ceph: fix endianness bug in frag_tree_split_cmp
        ceph: fix endianness of getattr mask in ceph_d_revalidate
        libceph: make sure ceph_aes_crypt() IV is aligned
        ceph: fix ceph_get_caps() interruption
      e90665a5
    • Linus Torvalds's avatar
      Merge branch 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 56ef1882
      Linus Torvalds authored
      Pull overlayfs fix from Miklos Szeredi:
       "This fixes a regression introduced in this cycle"
      
      * 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: fix possible use after free on redirect dir lookup
      56ef1882
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · eefa9feb
      Linus Torvalds authored
      Pull fuse fixes from Miklos Szeredi:
       "Fix two regressions, one introduced in 4.9 and a less recent one in
        4.2"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
        fuse: fix time_to_jiffies nsec sanity check
        fuse: clear FR_PENDING flag when moving requests out of pending queue
      eefa9feb
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · f09ff1de
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "This is a set of 12 fixes including the mpt3sas one that was causing
        hangs on ATA passthrough.
      
        The others are a couple of zoned block device fixes, a SAS device
        detection bug which lead to SATA drives not being matched to bays, two
        qla2xxx MSI fixes, a qla2xxx req for rsp confusion caused by cut and
        paste, and a few other minor fixes"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: mpt3sas: fix hang on ata passthrough commands
        scsi: lpfc: Set elsiocb contexts to NULL after freeing it
        scsi: sd: Ignore zoned field for host-managed devices
        scsi: sd: Fix wrong DPOFUA disable in sd_read_cache_type
        scsi: bfa: fix wrongly initialized variable in bfad_im_bsg_els_ct_request()
        scsi: ses: Fix SAS device detection in enclosure
        scsi: libfc: Fix variable name in fc_set_wwpn
        scsi: lpfc: avoid double free of resource identifiers
        scsi: qla2xxx: remove irq_affinity_notifier
        scsi: qla2xxx: fix MSI-X vector affinity
        scsi: qla2xxx: Fix apparent cut-n-paste error.
        scsi: qla2xxx: Get mutex lock before checking optrom_state
      f09ff1de
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · f8f2d4bd
      Linus Torvalds authored
      Pull arm64 fixes from Catalin Marinas:
      
       - avoid potential stack information leak via the ptrace ABI caused by
         uninitialised variables
      
       - SWIOTLB DMA API fall-back allocation fix when the SWIOTLB buffer is
         not initialised (all RAM is suitable for 32-bit DMA masks)
      
       - fix the bad_mode function returning for unhandled exceptions coming
         from user space
      
       - fix name clash in __page_to_voff()
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: avoid returning from bad_mode
        arm64/ptrace: Reject attempts to set incomplete hardware breakpoint fields
        arm64/ptrace: Avoid uninitialised struct padding in fpr_set()
        arm64/ptrace: Preserve previous registers for short regset write
        arm64/ptrace: Preserve previous registers for short regset write
        arm64/ptrace: Preserve previous registers for short regset write
        arm64: mm: avoid name clash in __page_to_voff()
        arm64: Fix swiotlb fallback allocation
      f8f2d4bd
    • Radim Krčmář's avatar
      Merge tag 'kvm-s390-master-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux · fec96901
      Radim Krčmář authored
      KVM: s390: Fix for 4.10 (via kvm/master)
      
      Fix a kernel memory exposure.
      fec96901
  9. Jan 20, 2017