Index: sys/kern/kern_timeout.c =================================================================== --- sys/kern/kern_timeout.c +++ sys/kern/kern_timeout.c @@ -1197,7 +1197,7 @@ */ c->c_iflags &= ~CALLOUT_PENDING; c->c_flags &= ~CALLOUT_ACTIVE; - not_on_a_list = 1; + not_on_a_list = -1; } else { not_on_a_list = 0; } @@ -1237,7 +1237,7 @@ CC_UNLOCK(cc); if (sq_locked) sleepq_release(&cc_exec_waiting(cc, direct)); - return (0); + return (not_on_a_list); } if (safe) { @@ -1352,13 +1352,13 @@ CTR3(KTR_CALLOUT, "postponing stop %p func %p arg %p", c, c->c_func, c->c_arg); CC_UNLOCK(cc); - return (0); + return (not_on_a_list); } CTR3(KTR_CALLOUT, "failed to stop %p func %p arg %p", c, c->c_func, c->c_arg); CC_UNLOCK(cc); KASSERT(!sq_locked, ("sleepqueue chain still locked")); - return (0); + return (not_on_a_list); } if (sq_locked) sleepq_release(&cc_exec_waiting(cc, direct));