aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/clone-internal.c
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2021-08-02 11:34:56 +0100
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2022-10-27 14:46:51 +0100
commitc59bf19563fae0c9c3c741e104ab2162e39a175e (patch)
treefe363fb66aba4fc08adfd52958c43db6d8c05fb0 /sysdeps/unix/sysv/linux/clone-internal.c
parentf3dfce19234c08bc08f324097ae22e5095ebabdd (diff)
downloadglibc-c59bf19563fae0c9c3c741e104ab2162e39a175e.tar
glibc-c59bf19563fae0c9c3c741e104ab2162e39a175e.tar.gz
glibc-c59bf19563fae0c9c3c741e104ab2162e39a175e.tar.bz2
glibc-c59bf19563fae0c9c3c741e104ab2162e39a175e.zip
TODO(uapi): cheri: fix clone_args
Current clone_args does not support 128 bit pointers. TODO: the fix is incomplete (missing clone3 abi checks) and has to be aligned with purecap clone3 struct layout.
Diffstat (limited to 'sysdeps/unix/sysv/linux/clone-internal.c')
-rw-r--r--sysdeps/unix/sysv/linux/clone-internal.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/clone-internal.c b/sysdeps/unix/sysv/linux/clone-internal.c
index a71effcbd3..8550fe9b24 100644
--- a/sysdeps/unix/sysv/linux/clone-internal.c
+++ b/sysdeps/unix/sysv/linux/clone-internal.c
@@ -32,6 +32,7 @@
#define offsetofend(TYPE, MEMBER) \
(offsetof (TYPE, MEMBER) + sizeof_field (TYPE, MEMBER))
+#ifndef __CHERI_PURE_CAPABILITY__
_Static_assert (__alignof (struct clone_args) == 8,
"__alignof (struct clone_args) != 8");
_Static_assert (offsetofend (struct clone_args, tls) == CLONE_ARGS_SIZE_VER0,
@@ -42,6 +43,7 @@ _Static_assert (offsetofend (struct clone_args, cgroup) == CLONE_ARGS_SIZE_VER2,
"offsetofend (struct clone_args, cgroup) != CLONE_ARGS_SIZE_VER2");
_Static_assert (sizeof (struct clone_args) == CLONE_ARGS_SIZE_VER2,
"sizeof (struct clone_args) != CLONE_ARGS_SIZE_VER2");
+#endif
int
__clone_internal (struct clone_args *cl_args,