1. 20 Feb, 2010 1 commit
    • Samu Onkalo's avatar
      Input: polldev can cause crash in case when polling disabled · d9c4f846
      Samu Onkalo authored
      When polled input device is opened and closed and there are no other
      users of polled device, the workqueue is created and destroyed in
      every open / close operation. It is probable that at some point
      dynamic allocation of internal parts of the workqueue cause changes to the
      workqueue.
      
      When a work is queued to the workqueue the work struct contains pointers
      to the workqueue data. If the workqueue has been changed and the work
      has never been queued to the new workqueue, work-struct contains pointers
      to the non-existing workqueue. This will cause crash at the work
      cancellation during device close since cancellation of a work assumes
      that the workqueue exists.
      
      To prevent that, work struct is cleaned up at device close. This keeps
      work struct clean for the next use.
      Signed-off-by: default avatarSamu Onkalo <samu.p.onkalo@nokia.com>
      Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
      d9c4f846
  2. 18 Feb, 2010 2 commits
  3. 08 Feb, 2010 1 commit
  4. 29 Jan, 2010 3 commits
  5. 28 Jan, 2010 1 commit
  6. 19 Jan, 2010 1 commit
  7. 13 Jan, 2010 2 commits
  8. 12 Jan, 2010 1 commit
  9. 11 Jan, 2010 1 commit
  10. 10 Jan, 2010 1 commit
  11. 07 Jan, 2010 1 commit
    • Daniel Drake's avatar
      Input: psmouse - fix Synaptics detection when protocol is disabled · e4e6efd2
      Daniel Drake authored
      For configurations where Synaptics hardware is present but the Synaptics
      extensions support is not compiled in, the mouse is reprobed and a new
      device is allocated on every suspend/resume.
      
      During probe, psmouse_switch_protocol() calls psmouse_extensions() with
      set_properties=1. This calls the dummy synaptics_init() which returns an
      error code, instructing us not to use the synaptics extensions.
      
      During resume, psmouse_reconnect() calls psmouse_extensions() with
      set_properties=0, in which case call to synaptics_init() is bypassed and
      PSMOUSE_SYNAPTICS is returned. Since the result is different from previous
      attempt psmouse_reconnect() fails and full re-probe happens.
      
      Fix this by tweaking the set_properties=0 codepath in psmouse_extensions()
      to be more careful about offering PSMOUSE_SYNAPTICS extensions.
      Signed-off-by: default avatarDaniel Drake <dsd@laptop.org>
      Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
      e4e6efd2
  12. 06 Jan, 2010 5 commits
  13. 02 Jan, 2010 1 commit
  14. 30 Dec, 2009 6 commits
  15. 25 Dec, 2009 7 commits
  16. 16 Dec, 2009 2 commits
  17. 15 Dec, 2009 4 commits