fhandler_timerfd::ioctl (unsigned int cmd, void *p)
{
int ret = -1;
- uint64_t ov_cnt;
+ uint64_t exp_cnt;
switch (cmd)
{
{
timerfd_tracker *tfd = (timerfd_tracker *) timerid;
- ov_cnt = *(uint64_t *) p;
- if (!ov_cnt)
+ exp_cnt = *(uint64_t *) p;
+ if (!exp_cnt)
{
set_errno (EINVAL);
break;
}
- tfd->ioctl_set_ticks (ov_cnt);
+ tfd->ioctl_set_ticks (exp_cnt);
ret = 0;
}
__except (EFAULT) {}
/* make sure to handle each WM_TIMECHANGE only once! */
if (msg.time != tc_time ())
{
- set_overrun_count (-1LL);
+ set_expiration_count (-1LL);
disarm_timer ();
timer_expired ();
set_tc_time (msg.time);
continue;
/* Make sure we haven't been abandoned and/or disarmed
in the meantime */
- if (overrun_count () == -1LL
+ if (expiration_count () == -1LL
|| IsEventSignalled (tfd_shared->disarm_evt ()))
{
leave_critical_section ();
/* One-shot timer? */
if (!get_interval ())
{
- /* Set overrun count, disarm timer */
- increment_overrun_count (1);
+ /* Set expiration count, disarm timer */
+ increment_expiration_count (1);
disarm_timer ();
}
else
{
- /* Compute overrun count. */
+ /* Compute expiration count. */
LONG64 now = get_clock_now ();
LONG64 ts = get_exp_ts ();
+ LONG64 exp_cnt;
/* Make concessions for unexact realtime clock */
if (ts > now)
ts = now - 1;
- LONG64 ov_cnt = (now - ts + get_interval () - 1)
- / get_interval ();
- increment_overrun_count (ov_cnt);
- ts += get_interval () * ov_cnt;
+ exp_cnt = (now - ts + get_interval () - 1) / get_interval ();
+ increment_expiration_count (exp_cnt);
+ ts += get_interval () * exp_cnt;
/* Set exp_ts to current timestamp. Make sure exp_ts ends up
- bigger than "now" and fix overrun count as required */
+ bigger than "now" and fix expiration count as required */
while (ts <= (now = get_clock_now ()))
{
- increment_overrun_count ((now - ts + get_interval () - 1)
- / get_interval ());
+ increment_expiration_count ((now - ts + get_interval () - 1)
+ / get_interval ());
ts += get_interval ();
}
set_exp_ts (ts);
}
void
-timerfd_tracker::ioctl_set_ticks (uint64_t ov_cnt)
+timerfd_tracker::ioctl_set_ticks (uint64_t exp_cnt)
{
- set_overrun_count (ov_cnt);
+ set_expiration_count (exp_cnt);
timer_expired ();
}
ret = -EIO;
else
{
- ret = read_and_reset_overrun_count ();
+ ret = read_and_reset_expiration_count ();
leave_critical_section ();
switch (ret)
{
goto repeat;
ret = -EAGAIN;
break;
- default: /* Return (positive) overrun count. */
+ default: /* Return (positive) expiration count. */
if (ret < 0)
ret = INT64_MAX;
break;
{
DueTime.QuadPart = get_clock_now () - ts;
/* If the timestamp was earlier than now, compute number
- of overruns and offset DueTime to expire immediately. */
+ of expirations and offset DueTime to expire immediately. */
if (DueTime.QuadPart >= 0)
DueTime.QuadPart = -1LL;
}
LONG64 _exp_ts; /* start timestamp or next expire timestamp
in 100ns */
LONG64 _interval; /* timer interval in 100ns */
- LONG64 _overrun_count; /* expiry counter */
+ LONG64 _expiration_count; /* expiry counter */
int _flags; /* settime flags */
DWORD _tc_time; /* timestamp of the last WM_TIMECHANGE msg */
int flags () const { return _flags; }
/* write access methods */
- void increment_overrun_count (LONG64 add)
- { InterlockedAdd64 (&_overrun_count, add); }
- void set_overrun_count (LONG64 newval)
- { InterlockedExchange64 (&_overrun_count, newval); }
- LONG64 read_and_reset_overrun_count ()
+ void increment_expiration_count (LONG64 add)
+ { InterlockedAdd64 (&_expiration_count, add); }
+ void set_expiration_count (LONG64 newval)
+ { InterlockedExchange64 (&_expiration_count, newval); }
+ LONG64 read_and_reset_expiration_count ()
{
- LONG64 ret = InterlockedExchange64 (&_overrun_count, 0);
+ LONG64 ret = InterlockedExchange64 (&_expiration_count, 0);
if (ret)
ResetEvent (_expired_evt);
return ret;
int disarm_timer () const { return tfd_shared->disarm_timer (); }
void timer_expired () const { tfd_shared->timer_expired (); }
- LONG64 overrun_count () const { return tfd_shared->_overrun_count; }
- void increment_overrun_count (LONG64 add) const
- { tfd_shared->increment_overrun_count (add); }
- void set_overrun_count (LONG64 ov_cnt) const
- { tfd_shared->set_overrun_count ((LONG64) ov_cnt); }
- LONG64 read_and_reset_overrun_count () const
- { return tfd_shared->read_and_reset_overrun_count (); }
+ LONG64 expiration_count () const { return tfd_shared->_expiration_count; }
+ void increment_expiration_count (LONG64 add) const
+ { tfd_shared->increment_expiration_count (add); }
+ void set_expiration_count (LONG64 exp_cnt) const
+ { tfd_shared->set_expiration_count ((LONG64) exp_cnt); }
+ LONG64 read_and_reset_expiration_count () const
+ { return tfd_shared->read_and_reset_expiration_count (); }
struct timespec it_value () const
{ return tfd_shared->time_spec ().it_value; }