[Midnightbsd-cvs] src [7798] trunk/sys/kern/subr_taskqueue.c: Add a special meaning to the negative ticks argument for taskqueue_enqueue_timeout.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Mon Sep 5 15:27:25 EDT 2016
Revision: 7798
http://svnweb.midnightbsd.org/src/?rev=7798
Author: laffer1
Date: 2016-09-05 15:27:25 -0400 (Mon, 05 Sep 2016)
Log Message:
-----------
Add a special meaning to the negative ticks argument for taskqueue_enqueue_timeout. do not ream the callout if it is already armed and the ticks is negative. otherwise rearm it to fire in abs(ticks) ticks in the future.
Obtained from: FreeBSD svn rev 243850
Revision Links:
--------------
http://svnweb.midnightbsd.org/src/?rev=243850
Modified Paths:
--------------
trunk/sys/kern/subr_taskqueue.c
Modified: trunk/sys/kern/subr_taskqueue.c
===================================================================
--- trunk/sys/kern/subr_taskqueue.c 2016-09-05 19:22:47 UTC (rev 7797)
+++ trunk/sys/kern/subr_taskqueue.c 2016-09-05 19:27:25 UTC (rev 7798)
@@ -252,9 +252,13 @@
} else {
queue->tq_callouts++;
timeout_task->f |= DT_CALLOUT_ARMED;
+ if (ticks < 0)
+ ticks = -ticks; /* Ignore overflow. */
}
- callout_reset(&timeout_task->c, ticks, taskqueue_timeout_func,
- timeout_task);
+ if (ticks > 0) {
+ callout_reset(&timeout_task->c, ticks,
+ taskqueue_timeout_func, timeout_task);
+ }
}
TQ_UNLOCK(queue);
return (res);
More information about the Midnightbsd-cvs
mailing list