]> xenbits.xensource.com Git - people/dstodden/blktap.git/commitdiff
PR-1129: Enforce masked state.
authorDaniel Stodden <daniel.stodden@citrix.com>
Tue, 15 Feb 2011 09:37:45 +0000 (01:37 -0800)
committerDaniel Stodden <daniel.stodden@citrix.com>
Tue, 15 Feb 2011 09:37:45 +0000 (01:37 -0800)
Masking timeout events only skips timeval calculation, but doesn't
prevent them from anyway as they expired. Enforce masked state right
around the callback. For timeouts, this means the event will keep
ticking at the interval given.

Signed-off-by: Daniel Stodden <daniel.stodden@citrix.com>
drivers/scheduler.c

index 43e13835c45b838f58300ed631a0164d5aa9e3e2..11e41cd3f263b43fd80cd052edb322c4372ba559 100644 (file)
@@ -200,7 +200,8 @@ scheduler_event_callback(event_t *event, char mode)
                event->deadline = now.tv_sec + event->timeout;
        }
 
-       event->cb(event->id, mode, event->private);
+       if (!event->masked)
+               event->cb(event->id, mode, event->private);
 }
 
 static int