1. 06 Oct, 2014 1 commit
  2. 01 Oct, 2014 7 commits
  3. 25 Sep, 2014 1 commit
  4. 22 Sep, 2014 2 commits
  5. 15 Sep, 2014 2 commits
  6. 12 Sep, 2014 2 commits
  7. 11 Sep, 2014 4 commits
  8. 08 Sep, 2014 5 commits
  9. 04 Sep, 2014 3 commits
  10. 03 Sep, 2014 3 commits
    • Benjamin Tissoires's avatar
      HID: thingm: set the proper error code before leaving · e4cf19ff
      Benjamin Tissoires authored
      In case of an unsupported firmware, the driver bails out without setting
      the LEDs interfaces, but forget to set the proper error code.
      err is then still equal to 0 and the hid subsytem consider the device
      to be in perfect shape.
      When removing it, thingm_remove() tries to unbind the rgb LEDs which
      has not been created, leading to a segfault.
      Signed-off-by: default avatarBenjamin Tissoires <benjamin.tissoires@redhat.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      e4cf19ff
    • Benjamin Tissoires's avatar
      HID: wacom: Add support for the Cintiq Companion · 89f2ab55
      Benjamin Tissoires authored
      The Wacom Cintiq Companion shares the same sensor than the Cintiq
      Companion Hybrid, with the exception of the different PIDs.
      Signed-off-by: default avatarBenjamin Tissoires <benjamin.tissoires@redhat.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      89f2ab55
    • Alan Stern's avatar
      HID: usbhid: improve handling of Clear-Halt and reset · 8f507ef5
      Alan Stern authored
      This patch changes the way usbhid carries out Clear-Halt and reset.
      
      Currently, after a Clear-Halt on the interrupt-IN endpoint, the driver
      immediately restarts the interrupt URB, even if the Clear-Halt failed.
      This doesn't work out well when the reason for the failure was that
      the device was disconnected (when a low- or full-speed device is
      connected through a hub to an EHCI controller, transfer errors caused
      by disconnection are reported as stalls by the hub).  Instead now the
      driver will attempt a reset after a failed Clear-Halt.
      
      The way resets are carried out is also changed.  Now the driver will
      call usb_queue_reset_device() instead of calling usb_reset_device()
      directly.  This avoids a deadlock that would arise when a device is
      unplugged: The hid_reset() routine runs as a workqueue item, a reset
      attempt after the device has been unplugged will fail, failure will
      cause usbhid to be unbound, and the disconnect routine will try to do
      cancel_work_sync().  The usb_queue_reset_device() implementation is
      carefully written to handle scenarios like this one properly.
      Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      8f507ef5
  11. 01 Sep, 2014 1 commit
    • Frank Praznik's avatar
      HID: sony: Set the Sixaxis cable state correctly · 9fddd74a
      Frank Praznik authored
      Bit 3 in byte 31 of the Sixaxis report indicates whether the battery is
      charging or not charging as opposed to whether or not the cable is plugged in.
      As a result, when connected via USB and fully charged, the power_supply status
      is wrongly reported as 'Discharging' instead of 'Full'.
      
      Use the battery level value to set the cable state so that the power status
      is reported correctly as that seems to be the only reliable way to determine the
      cable status on the Sixaxis.
      Signed-off-by: default avatarFrank Praznik <frank.praznik@oh.rr.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      9fddd74a
  12. 27 Aug, 2014 7 commits
    • Jiri Kosina's avatar
      HID: picolcd: be more verbose when reporting report size error · 604b6077
      Jiri Kosina authored
      picolcd device is not expected to send any report with size larger than
      64 bytes.
      
      If this impossible event happens (sic!), print also a report ID to allow
      for easier debugging.
      Suggested-by: default avatarBruno Prémont <bonbons@linux-vserver.org>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      604b6077
    • Benjamin Tissoires's avatar
      HID: logitech-dj: break out testing of validity of dj_device · 368d4e59
      Benjamin Tissoires authored
      We can do once the test of the validity of the dj_device, which removes
      some duplicated code in various functions.
      Signed-off-by: default avatarBenjamin Tissoires <benjamin.tissoires@redhat.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      368d4e59
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · ff0c57ac
      Linus Torvalds authored
      Pull HID fixes from Jiri Kosina:
      
       - fixes for potential memory corruption problems in magicmouse and
         picolcd drivers (the HW would have to be manufactured to be
         deliberately evil to trigger those) which were found by Steven
         Vittitoe
      
       - fix for false error message appearing in dmesg from logitech-dj
         driver, from Benjamin Tissoires
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
        HID: picolcd: sanity check report size in raw_event() callback
        HID: magicmouse: sanity check report size in raw_event() callback
        HID: logitech-dj: prevent false errors to be shown
      ff0c57ac
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 1fb00cbc
      Linus Torvalds authored
      Pull btrfs fixes from Chris Mason:
       "The biggest of these comes from Liu Bo, who tracked down a hang we've
        been hitting since moving to kernel workqueues (it's a btrfs bug, not
        in the generic code).  His patch needs backporting to 3.16 and 3.15
        stable, which I'll send once this is in.
      
        Otherwise these are assorted fixes.  Most were integrated last week
        during KS, but I wanted to give everyone the chance to test the
        result, so I waited for rc2 to come out before sending"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (24 commits)
        Btrfs: fix task hang under heavy compressed write
        Btrfs: fix filemap_flush call in btrfs_file_release
        Btrfs: fix crash on endio of reading corrupted block
        btrfs: fix leak in qgroup_subtree_accounting() error path
        btrfs: Use right extent length when inserting overlap extent map.
        Btrfs: clone, don't create invalid hole extent map
        Btrfs: don't monopolize a core when evicting inode
        Btrfs: fix hole detection during file fsync
        Btrfs: ensure tmpfile inode is always persisted with link count of 0
        Btrfs: race free update of commit root for ro snapshots
        Btrfs: fix regression of btrfs device replace
        Btrfs: don't consider the missing device when allocating new chunks
        Btrfs: Fix wrong device size when we are resizing the device
        Btrfs: don't write any data into a readonly device when scrub
        Btrfs: Fix the problem that the replace destroys the seed filesystem
        btrfs: Return right extent when fiemap gives unaligned offset and len.
        Btrfs: fix wrong extent mapping for DirectIO
        Btrfs: fix wrong write range for filemap_fdatawrite_range()
        Btrfs: fix wrong missing device counter decrease
        Btrfs: fix unzeroed members in fs_devices when creating a fs from seed fs
        ...
      1fb00cbc
    • Linus Torvalds's avatar
      Merge tag 'trace-fixes-v3.17-rc1-2' of... · c0fe5dcb
      Linus Torvalds authored
      Merge tag 'trace-fixes-v3.17-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      
      Pull trace buffer epoll hang fix from Steven Rostedt:
       "Josef Bacik found a bug in the ring_buffer_poll_wait() where the
        condition variable (waiters_pending) was set before being added to the
        poll queue via poll_wait().  This allowed for a small race window to
        happen where an event could come in, check the condition variable see
        it set to true, clear it, and then wake all the waiters.  But because
        the waiter set the variable before adding itself to the queue, the
        waker could have cleared the variable after it was set and then miss
        waking it up as it wasn't added to the queue yet.
      
        Discussing this bug, we realized that a memory barrier needed to be
        added too, for the rare case that something polls for a single trace
        event to happen (and just one, no more to come in), and miss the
        wakeup due to memory ordering.  Ideally, a memory barrier needs to be
        added on the writer side too, but as that will kill tracing
        performance and this is for a situation that tracing wasn't even
        designed for (who traces one instance of an event, use a printk
        instead!), this isn't worth adding the barrier.  But we can in the
        future add the barrier for when the buffer goes from empty to the
        first event, as that would cover this case"
      
      * tag 'trace-fixes-v3.17-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        trace: Fix epoll hang when we race with new entries
      c0fe5dcb
    • Jiri Kosina's avatar
      HID: picolcd: sanity check report size in raw_event() callback · 844817e4
      Jiri Kosina authored
      The report passed to us from transport driver could potentially be
      arbitrarily large, therefore we better sanity-check it so that raw_data
      that we hold in picolcd_pending structure are always kept within proper
      bounds.
      
      Cc: stable@vger.kernel.org
      Reported-by: default avatarSteven Vittitoe <scvitti@google.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      844817e4
    • Jiri Kosina's avatar
      HID: magicmouse: sanity check report size in raw_event() callback · c54def7b
      Jiri Kosina authored
      The report passed to us from transport driver could potentially be
      arbitrarily large, therefore we better sanity-check it so that
      magicmouse_emit_touch() gets only valid values of raw_id.
      
      Cc: stable@vger.kernel.org
      Reported-by: default avatarSteven Vittitoe <scvitti@google.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      c54def7b
  13. 26 Aug, 2014 2 commits