]> git.ipfire.org Git - people/ms/linux.git/commit
xen/events: Handle VIRQ_TIMER before any other hardirq in event loop.
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 28 Mar 2013 14:03:36 +0000 (10:03 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 19 Jun 2013 01:16:45 +0000 (02:16 +0100)
commita92f19e2c38ae57d363ef92cbbd3f9b3c30b87e5
tree5c39ef5434c229fa332e595d2964bceedb541153
parentb4b9150c21cd3babf406f40f7b29933c1c5f0f99
xen/events: Handle VIRQ_TIMER before any other hardirq in event loop.

This avoids any other hardirq handler seeing a very stale jiffies
value immediately after wakeup from a long idle period. The one
observable symptom of this was a USB keyboard, with software keyboard
repeat, which would always repeat a key immediately that it was
pressed. This is due to the key press waking the guest, the key
handler immediately runs, sees an old jiffies value, and then that
jiffies value significantly updated, before the key is unpressed.

Reviewed-by: David Vrabel <david.vrabel@citrix.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
(cherry picked from commit bee980d9e9642e96351fa3ca9077b853ecf62f57)
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/xen/events.c