This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[RFC v4 11/24] RISC-V: define __NR_futex as __NR_futex_time64 for 32-bit
- From: Alistair Francis <alistair dot francis at wdc dot com>
- To: libc-alpha at sourceware dot org
- Cc: arnd at arndb dot de, adhemerval dot zanella at linaro dot org, fweimer at redhat dot com, palmer at sifive dot com, macro at wdc dot com, zongbox at gmail dot com, alistair dot francis at wdc dot com, alistair23 at gmail dot com
- Date: Fri, 9 Aug 2019 18:00:16 -0700
- Subject: [RFC v4 11/24] RISC-V: define __NR_futex as __NR_futex_time64 for 32-bit
- Ironport-sdr: K/2Vc6YgkK2xOqRdDOY2gmOsh7qGp14/di7R3O2FoKO9QqQHttGixrJxSOYPyBQvI9D/QdsPTD md4PvfOOHt+KjJsDsrcBORg087GXg8l4UOqS0MnWBT25wTgQMoH7GnAVd4ZwQeCg5DKLUhrPXS Ox8ajJL4EkothYmGw3He+ZX1T5W4gFTa+iirrtYSzrCYrGi/hwNCJ3g+o6mA+ij0XqD5k8pif9 qVW5I1NM1YSx7PfTRn3aPv1yDyP0O7PYqZVPsc2uThObTE/dBpWxV1f77NHOypa4QxK9hO+Cgd vmQ=
- Ironport-sdr: riBj2Pm5slyj3peSsa9kdkpgIu6HbKd+TI2BjV/Sb5G02qfTxP8I/WrpR3HxZ4/aDjCaXPTR6n xo1RpLlz+4BZC0hscA/y4aOZ1PbQU1UcC9Zb55C6LBDcItydH5Q5YU5EV8E5KMg7kw3Mh3Yw6g lOM0u7awlNhEUNCjXSndT6KJJku0ZVqeaLkIzNKM0vDe0pk8jItKxBzMJaf8lFNBjHE7+n0BXo huSWZg5qNEdCbsq6vvyyLRXEeWaMa7Zg9j/Qyjei/mD3ef4w85qa8tUXNLYqxHlwsfX4guzSAx iWeOu1TO27vsdbClm0J2tq7M
- Ironport-sdr: 4uERIA8KlCw7fFq3JiYSJxn6apuElAv/9iOg62fE6zB2+EIz21Kd/MH3XXFqgdKnIJj4TzMjDa joekDK3TYwbge51MglKa7x5OJlpIpk99spT2PhROKiKgq+N2UjyYyb4DudWH9g95uSw0UX55TY XlXiqOsLu8Bpq1A7vX+SGeOeZSxd4ppOnSAjb3t1/HB41u0obYxi3CY+7ypkPV/CD0A0fTO52p mb5KwW2obO/ZP7ZmVYuMCpfihILlbYXHG6Ynf764t7s7Mza+aJ7mZDfRbxdCIOmgEiuqVkMMBJ 9ic=
- References: <cover.1565398513.git.alistair.francis@wdc.com>
The futex syscall isn't avaliable on R32 so let's define it to
be futex_time64 instead.
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
sysdeps/unix/sysv/linux/riscv/sysdep.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/sysdeps/unix/sysv/linux/riscv/sysdep.h b/sysdeps/unix/sysv/linux/riscv/sysdep.h
index 5470ea3d2a6..b7607ef9f17 100644
--- a/sysdeps/unix/sysv/linux/riscv/sysdep.h
+++ b/sysdeps/unix/sysv/linux/riscv/sysdep.h
@@ -116,6 +116,15 @@
#include <sysdeps/unix/sysdep.h>
+#if __riscv_xlen == 32
+/* Define the __NR_futex as __NR_futex64 as RV32 doesn't have a
+ * __NR_futex syscall.
+ */
+# ifndef __NR_futex
+# define __NR_futex __NR_futex_time64
+# endif
+#endif
+
#undef SYS_ify
#define SYS_ify(syscall_name) __NR_##syscall_name
--
2.22.0