1. 27 Apr, 2011 1 commit
    • Jeff Brown's avatar
      Input: evdev - only signal polls on full packets · cdda911c
      Jeff Brown authored
      This patch modifies evdev so that it only becomes readable when
      the buffer contains an EV_SYN/SYN_REPORT event.
      
      On SMP systems, it is possible for an evdev client blocked on poll()
      to wake up and read events from the evdev ring buffer at the same
      rate as they are enqueued.  This can result in high CPU usage,
      particularly for MT devices, because the client ends up reading
      events one at a time instead of reading complete packets.
      
      We eliminate this problem by making the device readable only when
      the buffer contains at least one complete packet.  This causes
      clients to block until the entire packet is available.
      Signed-off-by: default avatarJeff Brown <jeffbrown@android.com>
      Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
      cdda911c
  2. 23 Apr, 2011 1 commit
  3. 19 Apr, 2011 1 commit
  4. 18 Apr, 2011 30 commits
  5. 17 Apr, 2011 7 commits