Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0cdb041b-95c7-4040-a4c5-11ff97e696d2@sholland.org>
Date: Fri, 4 Oct 2024 09:16:35 -0500
From: Samuel Holland <samuel@...lland.org>
To: musl@...ts.openwall.com, Daniele GMail <d.dario76@...il.com>
Subject: Re: pthread_mutex_timedlock

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

> 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.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.