From 687688fd70587b0609356e2f6f7d1a47f5ddfa0a Mon Sep 17 00:00:00 2001 From: WANG Xuerui Date: Tue, 25 Oct 2022 12:14:07 +0800 Subject: [PATCH] forkfd/linux: add support for LoongArch This architecture is not CLONE_BACKWARDS in any way. Matching OpenDCDiag PR: https://github.com/opendcdiag/opendcdiag/pull/169 Pick-to: 6.4 6.2 5.15 Change-Id: Ibceccfd20d270b30302a936885d12e4c55cdd833 diff --git a/src/3rdparty/forkfd/forkfd_linux.c b/src/3rdparty/forkfd/forkfd_linux.c index 23a2f35238..cc7af6cb53 100644 --- a/src/3rdparty/forkfd/forkfd_linux.c +++ b/src/3rdparty/forkfd/forkfd_linux.c @@ -84,7 +84,8 @@ static int sys_clone(unsigned long cloneflags, int *ptid) return syscall(__NR_clone, cloneflags, child_stack, stack_size, ptid, newtls, ctid); #elif defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__mips__) || \ defined(__nds32__) || defined(__hppa__) || defined(__powerpc__) || defined(__i386__) || \ - defined(__x86_64__) || defined(__xtensa__) || defined(__alpha__) || defined(__riscv) + defined(__x86_64__) || defined(__xtensa__) || defined(__alpha__) || defined(__riscv) || \ + defined(__loongarch__) /* ctid and newtls are inverted on CONFIG_CLONE_BACKWARDS architectures, * but since both values are 0, there's no harm. */ return syscall(__NR_clone, cloneflags, child_stack, ptid, ctid, newtls); -- 2.35.2