Since he brought up the function it's likely already in musl On Fri, 4 Oct 2024 at 16:11, Daniele GMail wrote: > On Fri, 2024-10-04 at 09:16 -0500, Samuel Holland wrote: > > On 10/4/24 08:02, Daniele GMail wrote: > > > Hi, > > > I have a question about pthread_mutex_timedlock. > > > > > > From the man page I see > > > > > > [...] > > > > > > If the Timers option is supported, the timeout shall be based on > > > the > > > CLOCK_REALTIME clock; if the Timers option is not supported, the > > > timeout shall be based on the system clock as returned by the > > > time() > > > function. > > > > > > [...] > > > > > > Can anybody explain me why there's no possibility to choose a > > > different > > > clock like could be done for the pthread_cond_timedwait? > > > > This is an omission in the standard[0], that was resolved in POSIX > > 2024[1] by adding pthread_mutex_clocklock(), which does what you > > want. > > > > [0]: https://www.austingroupbugs.net/view.php?id=1216 > > [1]: > > > https://pubs.opengroup.org/onlinepubs/9799919799.2024edition/functions/pthread_mutex_clocklock.html > > Oh, this is great news. > > But guess that since this is dated 2024 is not yet part of musl 1.2.5 > right? Are there plans on when it will be available? > > > > > > I have a lot of places in my code where timedlock of mutexes > > > affected > > > by time changes could lead to problems and it is really difficult > > > to > > > distinguish timeouts caused by time changes from other ones in > > > order to > > > decide how to react. > > > > > > Can someone point me to a portable workaround for this? > > > > > > Thanks in advance, > > > Daniele. > >