From: Jeremy Fitzhardinge Date: Sat, 21 Aug 2010 02:10:01 +0000 (-0700) Subject: xen: handle events as edge-triggered X-Git-Tag: v2.6.36-rc3~26^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dffe2e1e1a1ddb566a76266136c312801c66dcf7;p=pandora-kernel.git xen: handle events as edge-triggered Xen events are logically edge triggered, as Xen only calls the event upcall when an event is newly set, but not continuously as it remains set. As a result, use handle_edge_irq rather than handle_level_irq. This has the important side-effect of fixing a long-standing bug of events getting lost if: - an event's interrupt handler is running - the event is migrated to a different vcpu - the event is re-triggered The most noticable symptom of these lost events is occasional lockups of blkfront. Many thanks to Tom Kopec and Daniel Stodden in tracking this down. Signed-off-by: Jeremy Fitzhardinge Cc: Tom Kopec Cc: Daniel Stodden Cc: Stable Kernel --- Reading git-diff-tree failed