|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH] minios: clear the event before calling the handler
minios: clear the event before calling the handler
since (especially in the SMP case) the handler may make another domain
send an event again, and that must not be lost.
Signed-off-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxxx>
diff -r 4965e711fee8 extras/mini-os/events.c
--- a/extras/mini-os/events.c Wed May 07 15:36:32 2008 +0100
+++ b/extras/mini-os/events.c Thu May 08 11:26:26 2008 +0100
@@ -58,9 +58,12 @@ int do_event(evtchn_port_t port, struct
int do_event(evtchn_port_t port, struct pt_regs *regs)
{
ev_action_t *action;
+
+ clear_evtchn(port);
+
if (port >= NR_EVS) {
printk("Port number too large: %d\n", port);
- goto out;
+ return 1;
}
action = &ev_actions[port];
@@ -68,9 +71,6 @@ int do_event(evtchn_port_t port, struct
/* call the handler */
action->handler(port, regs, action->data);
-
- out:
- clear_evtchn(port);
return 1;
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-devel] [PATCH] minios: clear the event before calling the handler,
Samuel Thibault <=
|
|
|
|
|