Lukasz Majewski
29e9874a04
y2038: nptl: Convert pthread_mutex_{clock|timed}lock to support 64 bit
...
The pthread_mutex_clocklock and pthread_mutex_timedlock have been converted
to support 64 bit time.
This change uses:
- New __futex_clocklock_wait64 (instead of lll_timedwait)
from ./sysdeps/nptl/futex-helpers.c and
- New __futex_clocklock64 function (instead of lll_clocklock)
- New futex_lock_pi64
defined in sysdeps/nptl/futex-internal.h
The pthread_mutex_{clock|timed}lock only accepts absolute time.
Moreover, there is no need to check for NULL passed as *abstime pointer to the
syscalls as those calls have exported symbols marked with __nonull attribute
for abstime.
Some architectures - namely x86, powerpc and s390 - do support lock elision.
For those - adjustments have been made in arch specific elision-*.c files
to use __futex_clocklock64 instead of lll_clocklock.
The __lll_lock_elision (aliased to __lll_clocklock_elision in e.g.
sysdeps/unix/sysv/linux/s390/elision-timed.c) just uses, in this patch
provided, __futex_clocklock64.
For systems with __TIMESIZE != 64 && __WORDSIZE == 32:
- Conversions between 64 bit time to 32 bit are necessary
- Redirection to pthread_mutex_{clock|timed}lock will provide support for 64
bit time
Build tests:
./src/scripts/build-many-glibcs.py glibcs
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2020-10-15 09:35:43 +02:00
..
2020-01-01 00:14:33 +00:00
2020-10-02 09:57:44 +01:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-07-27 12:32:41 -07:00
2019-07-12 13:36:25 +00:00
2020-01-01 00:14:33 +00:00
2020-02-20 08:57:01 +01:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:27:49 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-10-08 10:09:30 +02:00
2017-01-10 11:50:17 +01:00
2020-07-07 14:10:58 -03:00
2020-01-01 00:14:33 +00:00
2020-06-02 10:32:47 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-02-20 08:57:01 +01:00
2020-02-20 08:57:01 +01:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-02-18 15:12:25 +01:00
2020-01-01 00:14:33 +00:00
2015-06-10 10:18:12 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-02 11:59:18 +02:00
2020-06-02 11:54:58 +02:00
2020-06-02 11:54:58 +02:00
2020-06-02 11:54:58 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-02 11:59:18 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-02 10:32:37 +02:00
2020-05-20 20:28:24 +02:00
2020-06-02 11:54:58 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-02 11:59:18 +02:00
2020-06-02 11:59:18 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-02-14 21:12:45 -03:00
2020-08-17 05:02:06 -07:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-02-20 08:57:01 +01:00
2020-02-20 08:57:01 +01:00
2020-01-01 00:14:33 +00:00
2020-09-02 09:49:54 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-07-16 17:55:35 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:23:20 +02:00
2020-06-02 10:32:37 +02:00
2020-06-02 10:32:30 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:22:31 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-08-13 14:16:34 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2017-08-31 18:52:00 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-10-15 09:35:43 +02:00
2020-02-14 21:12:45 -03:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-10-04 17:13:46 +02:00
2020-10-04 17:13:46 +02:00
2020-10-04 17:13:46 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-10-04 17:13:46 +02:00
2020-10-04 17:13:46 +02:00
2020-10-04 17:13:46 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-10-04 17:13:46 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:22:31 +02:00
2020-06-02 10:32:47 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:22:31 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-07-07 14:10:58 -03:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-08-17 05:02:06 -07:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-10-15 09:35:43 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-09-14 09:37:10 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-09-11 14:35:32 -03:00
2020-01-01 00:14:33 +00:00
2020-09-14 09:37:10 +02:00
2020-01-01 00:14:33 +00:00
2020-09-14 09:37:10 +02:00
2020-09-14 09:37:10 +02:00
2020-09-14 09:37:10 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-02-14 21:12:45 -03:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2016-06-29 20:24:44 -07:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-07 13:35:54 +02:00
2020-06-07 13:35:54 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-25 18:32:28 +02:00
2020-05-25 18:32:28 +02:00
2015-10-27 21:48:34 +00:00
2015-10-27 21:48:34 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-26 00:46:07 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-02 11:59:18 +02:00
2020-05-20 20:29:10 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2017-01-10 11:50:17 +01:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2019-07-12 13:36:23 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:22:31 +02:00
2020-07-27 12:32:41 -07:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-05-20 20:22:31 +02:00
2020-05-20 20:22:31 +02:00
2020-05-20 20:22:31 +02:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2017-02-16 17:33:18 -05:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-01-01 00:14:33 +00:00
2020-06-02 10:32:37 +02:00
2020-01-01 00:21:22 +00:00
2020-06-02 11:59:18 +02:00