[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87bloanh89.fsf@nanos.tec.linutronix.de>
Date: Thu, 02 Apr 2020 15:35:02 +0200
From: Thomas Gleixner <tglx@...utronix.de>
To: "Michael Kerrisk \(man-pages\)" <mtk.manpages@...il.com>
Cc: mtk.manpages@...il.com, linux-man <linux-man@...r.kernel.org>,
lkml <linux-kernel@...r.kernel.org>, arul.jeniston@...il.com,
"devi R.K" <devi.feb27@...il.com>,
Marc Lehmann <debian-reportbug@...n9.de>,
John Stultz <john.stultz@...aro.org>,
Andrei Vagin <avagin@...il.com>,
Cyrill Gorcunov <gorcunov@...il.com>
Subject: Re: timer_settime() and ECANCELED
"Michael Kerrisk (man-pages)" <mtk.manpages@...il.com> writes:
> NOTES
> Suppose the following scenario for CLOCK_REALTIME or CLOCK_REAL‐
> TIME_ALARM timer that was created with timerfd_create():
>
> (a) The timer has been started (timerfd_settime()) with the
> TFD_TIMER_ABSTIME and TFD_TIMER_CANCEL_ON_SET flags;
>
> (b) A discontinuous change (e.g. settimeofday(2)) is subsequently
> made to the CLOCK_REALTIME clock; and
>
> (c) the caller once more calls timerfd_settime() to rearm the
> timer (without first doing a read(2) on the file descriptor).
>
> In this case the following occurs:
>
> · The timerfd_settime() returns -1 with errno set to ECANCELED.
> (This enables the caller to know that the previous timer was
> affected by a discontinuous change to the clock.)
>
> · The timer is successfully rearmed with the settings provided in
> the second timerfd_settime() call. (This was probably an imple‐
> mentation accident, but won't be fixed now, in case there are
> applications that depend on this behaviour.)
Clear enough.
Thanks Michael!
Powered by blists - more mailing lists