fix test fail

This commit is contained in:
panchenbo 2023-09-21 18:43:53 +08:00
parent 4be4695c68
commit 7427bfff0e
3 changed files with 125 additions and 371 deletions

View File

@ -1,40 +1,30 @@
From d5d95c5d36aa549e19fa2e6cff7bd3c567f0dfbb Mon Sep 17 00:00:00 2001
From 164c87383f016db422341a35eaaf3abf63c8478a Mon Sep 17 00:00:00 2001
From: rpm-build <rpm-build>
Date: Thu, 31 Aug 2023 14:27:02 +0800
Subject: [PATCH 2/4] add sw_64 support not upstream modified files 1
Date: Thu, 21 Sep 2023 18:21:01 +0800
Subject: [PATCH] add sw_64 support not upstream modified files
---
README.md | 1 +
doc/man/man1/scmp_sys_resolver.1 | 2 +-
doc/man/man3/seccomp_arch_add.3 | 1 +
include/seccomp-syscalls.h | 12 ++++++
include/seccomp.h | 10 +++++
include/seccomp.h.in | 10 +++++
src/Makefile.am | 1 +
src/Makefile.in | 18 +++++++++
src/arch-syscall-dump.c | 4 ++
src/arch-syscall-validate | 21 +++++++++-
src/arch.c | 7 ++++
src/gen_pfc.c | 2 +
src/python/libseccomp.pxd | 1 +
src/python/seccomp.pyx | 4 ++
src/syscalls.h | 2 +
src/system.c | 1 +
tests/15-basic-resolver.c | 1 +
tests/16-sim-arch_basic.c | 8 +++-
tests/16-sim-arch_basic.py | 1 +
tests/23-sim-arch_all_le_basic.c | 3 ++
tests/23-sim-arch_all_le_basic.py | 1 +
tests/38-basic-pfc_coverage.c | 3 ++
tests/53-sim-binary_tree.tests | 62 +++++++++++++++---------------
tests/56-basic-iterate_syscalls.c | 1 +
tests/56-basic-iterate_syscalls.py | 1 +
tests/regression | 4 +-
tools/scmp_arch_detect.c | 3 ++
tools/scmp_bpf_sim.c | 2 +
tools/util.c | 2 +
tools/util.h | 9 +++++
30 files changed, 163 insertions(+), 35 deletions(-)
README.md | 1 +
doc/man/man1/scmp_sys_resolver.1 | 2 +-
doc/man/man3/seccomp_arch_add.3 | 1 +
include/seccomp-syscalls.h | 12 ++++++++++++
include/seccomp.h | 10 ++++++++++
include/seccomp.h.in | 10 ++++++++++
src/Makefile.am | 1 +
src/Makefile.in | 18 ++++++++++++++++++
src/arch-syscall-dump.c | 4 ++++
src/arch-syscall-validate | 21 ++++++++++++++++++++-
src/arch.c | 7 +++++++
src/gen_pfc.c | 2 ++
src/python/libseccomp.pxd | 1 +
src/python/seccomp.pyx | 4 ++++
src/syscalls.h | 2 ++
src/system.c | 1 +
tools/scmp_arch_detect.c | 3 +++
tools/scmp_bpf_sim.c | 2 ++
tools/util.c | 2 ++
tools/util.h | 9 +++++++++
20 files changed, 111 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index a83a54a..61fe179 100644
@ -505,245 +495,6 @@ index ae445bf..f35da74 100644
case SCMP_ARCH_AARCH64:
case SCMP_ARCH_PPC64:
case SCMP_ARCH_PPC64LE:
diff --git a/tests/15-basic-resolver.c b/tests/15-basic-resolver.c
index 6db69e8..171b301 100644
--- a/tests/15-basic-resolver.c
+++ b/tests/15-basic-resolver.c
@@ -31,6 +31,7 @@ unsigned int arch_list[] = {
SCMP_ARCH_X86_64,
SCMP_ARCH_X32,
SCMP_ARCH_ARM,
+ SCMP_ARCH_SW_64,
SCMP_ARCH_AARCH64,
SCMP_ARCH_MIPS,
SCMP_ARCH_MIPS64,
diff --git a/tests/16-sim-arch_basic.c b/tests/16-sim-arch_basic.c
index 0b141e1..59a4e10 100644
--- a/tests/16-sim-arch_basic.c
+++ b/tests/16-sim-arch_basic.c
@@ -1,4 +1,4 @@
-/**
+/**RM
* Seccomp Library test program
*
* Copyright (c) 2012 Red Hat <pmoore@redhat.com>
@@ -75,6 +75,9 @@ int main(int argc, char *argv[])
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_ARM);
+ if (rc != 0)
+ goto out;
+ rc = seccomp_arch_add(ctx, SCMP_ARCH_SW_64);
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64);
@@ -142,6 +145,9 @@ int main(int argc, char *argv[])
if (rc != 0)
goto out;
rc = seccomp_arch_remove(ctx, SCMP_ARCH_ARM);
+ if (rc != 0)
+ goto out;
+ rc = seccomp_arch_remove(ctx, SCMP_ARCH_SW_64);
if (rc != 0)
goto out;
rc = seccomp_arch_remove(ctx, SCMP_ARCH_AARCH64);
diff --git a/tests/16-sim-arch_basic.py b/tests/16-sim-arch_basic.py
index 846553f..b12cea0 100755
--- a/tests/16-sim-arch_basic.py
+++ b/tests/16-sim-arch_basic.py
@@ -39,6 +39,7 @@ def test(args):
f.add_arch(Arch("x86_64"))
f.add_arch(Arch("x32"))
f.add_arch(Arch("arm"))
+ f.add_arch(Arch("sw_64"))
f.add_arch(Arch("aarch64"))
f.add_arch(Arch("mipsel"))
f.add_arch(Arch("mipsel64"))
diff --git a/tests/23-sim-arch_all_le_basic.c b/tests/23-sim-arch_all_le_basic.c
index 32739e5..bddfe1f 100644
--- a/tests/23-sim-arch_all_le_basic.c
+++ b/tests/23-sim-arch_all_le_basic.c
@@ -54,6 +54,9 @@ int main(int argc, char *argv[])
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("arm"));
+ if (rc != 0)
+ goto out;
+ rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("sw_64"));
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("aarch64"));
diff --git a/tests/23-sim-arch_all_le_basic.py b/tests/23-sim-arch_all_le_basic.py
index 33eedb1..576ed50 100755
--- a/tests/23-sim-arch_all_le_basic.py
+++ b/tests/23-sim-arch_all_le_basic.py
@@ -35,6 +35,7 @@ def test(args):
f.add_arch(Arch("x86_64"))
f.add_arch(Arch("x32"))
f.add_arch(Arch("arm"))
+ f.add_arch(Arch("sw_64"))
f.add_arch(Arch("aarch64"))
f.add_arch(Arch("mipsel"))
f.add_arch(Arch("mipsel64"))
diff --git a/tests/38-basic-pfc_coverage.c b/tests/38-basic-pfc_coverage.c
index c6829ac..99c6eed 100644
--- a/tests/38-basic-pfc_coverage.c
+++ b/tests/38-basic-pfc_coverage.c
@@ -61,6 +61,9 @@ int main(int argc, char *argv[])
if (rc < 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_ARM);
+ if (rc < 0)
+ goto out;
+ rc = seccomp_arch_add(ctx, SCMP_ARCH_SW_64);
if (rc < 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64);
diff --git a/tests/53-sim-binary_tree.tests b/tests/53-sim-binary_tree.tests
index 2ebaafd..f534fa9 100644
--- a/tests/53-sim-binary_tree.tests
+++ b/tests/53-sim-binary_tree.tests
@@ -8,56 +8,56 @@
test type: bpf-sim
# Testname Arch Syscall Arg0 Arg1 Arg2 Arg3 Arg4 Arg5 Result
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 read N N N N N N ERRNO(0)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 write N N N N N N ERRNO(1)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 read N N N N N N ERRNO(0)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 write N N N N N N ERRNO(1)
53-sim-binary_tree +x86_64,+ppc64le open N N N N N N ERRNO(2)
53-sim-binary_tree +aarch64 open N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 close N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 close 100 1234 N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 close 100 101 N N N N ERRNO(3)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 close N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 close 100 1234 N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 close 100 101 N N N N ERRNO(3)
53-sim-binary_tree +x86_64,+ppc64le stat N N N N N N ERRNO(4)
53-sim-binary_tree +aarch64 stat N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 fstat N N N N N N ERRNO(5)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 fstat N N N N N N ERRNO(5)
53-sim-binary_tree +x86_64,+ppc64le lstat N N N N N N ERRNO(6)
53-sim-binary_tree +aarch64 lstat N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le poll 102 N N N N N ERRNO(7)
53-sim-binary_tree +aarch64 poll 102 N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 lseek 103 104 N N N N ERRNO(8)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mmap N N N N N N ERRNO(9)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mprotect N N N N N N ERRNO(10)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 munmap N N N N N N ERRNO(11)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 brk N N N N N N ERRNO(12)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 rt_sigaction N N N N N N ERRNO(13)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 rt_sigprocmask N N N N N N ERRNO(14)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 rt_sigreturn N N N N N N ERRNO(15)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 ioctl N N N N N N ERRNO(16)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 pread64 105 N N N N N ERRNO(17)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 pwrite64 N N N N N N ERRNO(18)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 readv N N N N N N ERRNO(19)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 writev N N N N N N ERRNO(20)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 lseek 103 104 N N N N ERRNO(8)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mmap N N N N N N ERRNO(9)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mprotect N N N N N N ERRNO(10)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 munmap N N N N N N ERRNO(11)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 brk N N N N N N ERRNO(12)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 rt_sigaction N N N N N N ERRNO(13)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 rt_sigprocmask N N N N N N ERRNO(14)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 rt_sigreturn N N N N N N ERRNO(15)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 ioctl N N N N N N ERRNO(16)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 pread64 105 N N N N N ERRNO(17)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 pwrite64 N N N N N N ERRNO(18)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 readv N N N N N N ERRNO(19)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 writev N N N N N N ERRNO(20)
53-sim-binary_tree +x86_64,+ppc64le access N N N N N N ERRNO(21)
53-sim-binary_tree +aarch64 access N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le pipe N N N N N N ERRNO(22)
53-sim-binary_tree +aarch64 pipe N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 select N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 select N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le select 106 107 N N N N ERRNO(23)
53-sim-binary_tree +aarch64 select 106 107 N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 sched_yield N N N N N N ERRNO(24)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mremap N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mremap 108 109 N N N N ERRNO(25)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 msync N N N N N N ERRNO(26)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mincore N N N N N N ERRNO(27)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 madvise N N N N N N ERRNO(28)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 dup 112 N N N N N ERRNO(32)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 dup 5678 N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 sched_yield N N N N N N ERRNO(24)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mremap N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mremap 108 109 N N N N ERRNO(25)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 msync N N N N N N ERRNO(26)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mincore N N N N N N ERRNO(27)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 madvise N N N N N N ERRNO(28)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 dup 112 N N N N N ERRNO(32)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 dup 5678 N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le dup2 N N N N N N ERRNO(33)
53-sim-binary_tree +aarch64 dup2 N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le pause N N N N N N ERRNO(34)
53-sim-binary_tree +aarch64 pause N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 nanosleep N N N N N N ERRNO(35)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 getitimer N N N N N N ERRNO(36)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 nanosleep N N N N N N ERRNO(35)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 getitimer N N N N N N ERRNO(36)
53-sim-binary_tree +x86_64,+ppc64le alarm N N N N N N ERRNO(37)
-53-sim-binary_tree +aarch64 alarm N N N N N N ALLOW
+53-sim-binary_tree +sw_64,+aarch64 alarm N N N N N N ALLOW
test type: bpf-valgrind
diff --git a/tests/56-basic-iterate_syscalls.c b/tests/56-basic-iterate_syscalls.c
index 5e7ab67..c5bcba5 100644
--- a/tests/56-basic-iterate_syscalls.c
+++ b/tests/56-basic-iterate_syscalls.c
@@ -32,6 +32,7 @@ unsigned int arch_list[] = {
SCMP_ARCH_X86_64,
SCMP_ARCH_X32,
SCMP_ARCH_ARM,
+ SCMP_ARCH_SW_64,
SCMP_ARCH_AARCH64,
SCMP_ARCH_MIPS,
SCMP_ARCH_MIPS64,
diff --git a/tests/56-basic-iterate_syscalls.py b/tests/56-basic-iterate_syscalls.py
index 77a5b89..d52b36d 100755
--- a/tests/56-basic-iterate_syscalls.py
+++ b/tests/56-basic-iterate_syscalls.py
@@ -32,6 +32,7 @@ arch_list = ["x86",
"x86_64",
"x32",
"arm",
+ "sw_64",
"aarch64",
"mipsel",
"mipsel64",
diff --git a/tests/regression b/tests/regression
index f938b1b..3e08bc5 100755
--- a/tests/regression
+++ b/tests/regression
@@ -24,6 +24,7 @@
GLBL_ARCH_LE_SUPPORT=" \
x86 x86_64 x32 \
arm aarch64 \
+ sw_64 \
mipsel mipsel64 mipsel64n32 \
ppc64le \
riscv64"
@@ -44,6 +45,7 @@ GLBL_ARCH_32B_SUPPORT=" \
GLBL_ARCH_64B_SUPPORT=" \
x86_64 \
aarch64 \
+ sw_64 \
mips64 \
parisc64 \
ppc64 \
@@ -796,7 +798,7 @@ function run_test_live() {
# setup the arch specific return values
case "$arch" in
- x86|x86_64|x32|arm|aarch64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64)
+ x86|x86_64|x32|arm|aarch64|sw_64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64)
rc_kill_process=159
rc_kill=159
rc_allow=160
diff --git a/tools/scmp_arch_detect.c b/tools/scmp_arch_detect.c
index b844a68..21233d4 100644
--- a/tools/scmp_arch_detect.c
@ -805,5 +556,5 @@ index 6c2ca33..ac3a238 100644
* The ARM architecture tokens
*/
--
2.27.0
2.33.0

View File

@ -1,7 +1,7 @@
From f63655e900215229d8e697d9eabe45b2174647fb Mon Sep 17 00:00:00 2001
From b4b4d3773c3e6e416fd03378a57392c7c799cf1c Mon Sep 17 00:00:00 2001
From: rpm-build <rpm-build>
Date: Thu, 31 Aug 2023 14:34:27 +0800
Subject: [PATCH 1/2] add loongarch64 support not upstream modified files 1
Date: Thu, 21 Sep 2023 18:27:14 +0800
Subject: [PATCH] add loongarch64 support not upstream modified files
---
README.md | 1 +
@ -354,22 +354,22 @@ index f35da74..0ccc2dd 100644
case SCMP_ARCH_PPC64LE:
case SCMP_ARCH_S390:
diff --git a/tests/15-basic-resolver.c b/tests/15-basic-resolver.c
index 171b301..140b2ae 100644
index 6db69e8..c79894f 100644
--- a/tests/15-basic-resolver.c
+++ b/tests/15-basic-resolver.c
@@ -33,6 +33,7 @@ unsigned int arch_list[] = {
@@ -32,6 +32,7 @@ unsigned int arch_list[] = {
SCMP_ARCH_X32,
SCMP_ARCH_ARM,
SCMP_ARCH_SW_64,
SCMP_ARCH_AARCH64,
+ SCMP_ARCH_LOONGARCH64,
SCMP_ARCH_MIPS,
SCMP_ARCH_MIPS64,
SCMP_ARCH_MIPS64N32,
diff --git a/tests/16-sim-arch_basic.c b/tests/16-sim-arch_basic.c
index 59a4e10..0270c1e 100644
index 0b141e1..ee1a4a5 100644
--- a/tests/16-sim-arch_basic.c
+++ b/tests/16-sim-arch_basic.c
@@ -81,6 +81,9 @@ int main(int argc, char *argv[])
@@ -78,6 +78,9 @@ int main(int argc, char *argv[])
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64);
@ -379,7 +379,7 @@ index 59a4e10..0270c1e 100644
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_MIPSEL);
@@ -151,6 +154,9 @@ int main(int argc, char *argv[])
@@ -145,6 +148,9 @@ int main(int argc, char *argv[])
if (rc != 0)
goto out;
rc = seccomp_arch_remove(ctx, SCMP_ARCH_AARCH64);
@ -390,22 +390,22 @@ index 59a4e10..0270c1e 100644
goto out;
rc = seccomp_arch_remove(ctx, SCMP_ARCH_MIPSEL);
diff --git a/tests/16-sim-arch_basic.py b/tests/16-sim-arch_basic.py
index b12cea0..a2c59f4 100755
index 846553f..ba38b91 100755
--- a/tests/16-sim-arch_basic.py
+++ b/tests/16-sim-arch_basic.py
@@ -41,6 +41,7 @@ def test(args):
@@ -40,6 +40,7 @@ def test(args):
f.add_arch(Arch("x32"))
f.add_arch(Arch("arm"))
f.add_arch(Arch("sw_64"))
f.add_arch(Arch("aarch64"))
+ f.add_arch(Arch("loongarch64"))
f.add_arch(Arch("mipsel"))
f.add_arch(Arch("mipsel64"))
f.add_arch(Arch("mipsel64n32"))
diff --git a/tests/23-sim-arch_all_le_basic.c b/tests/23-sim-arch_all_le_basic.c
index bddfe1f..1d96116 100644
index 32739e5..d10d351 100644
--- a/tests/23-sim-arch_all_le_basic.c
+++ b/tests/23-sim-arch_all_le_basic.c
@@ -60,6 +60,9 @@ int main(int argc, char *argv[])
@@ -57,6 +57,9 @@ int main(int argc, char *argv[])
if (rc != 0)
goto out;
rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("aarch64"));
@ -416,12 +416,12 @@ index bddfe1f..1d96116 100644
goto out;
rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("mipsel"));
diff --git a/tests/23-sim-arch_all_le_basic.py b/tests/23-sim-arch_all_le_basic.py
index 576ed50..9804b5d 100755
index 33eedb1..0cecbc9 100755
--- a/tests/23-sim-arch_all_le_basic.py
+++ b/tests/23-sim-arch_all_le_basic.py
@@ -37,6 +37,7 @@ def test(args):
@@ -36,6 +36,7 @@ def test(args):
f.add_arch(Arch("x32"))
f.add_arch(Arch("arm"))
f.add_arch(Arch("sw_64"))
f.add_arch(Arch("aarch64"))
+ f.add_arch(Arch("loongarch64"))
f.add_arch(Arch("mipsel"))
@ -442,10 +442,10 @@ index c9b575e..d3b7093 100644
goto out;
diff --git a/tests/38-basic-pfc_coverage.c b/tests/38-basic-pfc_coverage.c
index 99c6eed..0d1b5f2 100644
index c6829ac..d6ac796 100644
--- a/tests/38-basic-pfc_coverage.c
+++ b/tests/38-basic-pfc_coverage.c
@@ -67,6 +67,9 @@ int main(int argc, char *argv[])
@@ -64,6 +64,9 @@ int main(int argc, char *argv[])
if (rc < 0)
goto out;
rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64);
@ -590,102 +590,102 @@ index 39b2769..cc49890 100755
f.add_arch(Arch("x86_64"))
diff --git a/tests/53-sim-binary_tree.tests b/tests/53-sim-binary_tree.tests
index f534fa9..b02a081 100644
index 2ebaafd..87380d6 100644
--- a/tests/53-sim-binary_tree.tests
+++ b/tests/53-sim-binary_tree.tests
@@ -8,56 +8,56 @@
test type: bpf-sim
# Testname Arch Syscall Arg0 Arg1 Arg2 Arg3 Arg4 Arg5 Result
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 read N N N N N N ERRNO(0)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 write N N N N N N ERRNO(1)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 read N N N N N N ERRNO(0)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 write N N N N N N ERRNO(1)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 read N N N N N N ERRNO(0)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 write N N N N N N ERRNO(1)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 read N N N N N N ERRNO(0)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 write N N N N N N ERRNO(1)
53-sim-binary_tree +x86_64,+ppc64le open N N N N N N ERRNO(2)
-53-sim-binary_tree +aarch64 open N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 close N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 close 100 1234 N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 close 100 101 N N N N ERRNO(3)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 close N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 close 100 1234 N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 close 100 101 N N N N ERRNO(3)
+53-sim-binary_tree +aarch64,+loongarch64 open N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 close N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 close 100 1234 N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 close 100 101 N N N N ERRNO(3)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 close N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 close 100 1234 N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 close 100 101 N N N N ERRNO(3)
53-sim-binary_tree +x86_64,+ppc64le stat N N N N N N ERRNO(4)
-53-sim-binary_tree +aarch64 stat N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 fstat N N N N N N ERRNO(5)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 fstat N N N N N N ERRNO(5)
+53-sim-binary_tree +aarch64,+loongarch64 stat N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 fstat N N N N N N ERRNO(5)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 fstat N N N N N N ERRNO(5)
53-sim-binary_tree +x86_64,+ppc64le lstat N N N N N N ERRNO(6)
-53-sim-binary_tree +aarch64 lstat N N N N N N ALLOW
+53-sim-binary_tree +aarch64,+loongarch64 lstat N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le poll 102 N N N N N ERRNO(7)
-53-sim-binary_tree +aarch64 poll 102 N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 lseek 103 104 N N N N ERRNO(8)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mmap N N N N N N ERRNO(9)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mprotect N N N N N N ERRNO(10)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 munmap N N N N N N ERRNO(11)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 brk N N N N N N ERRNO(12)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 rt_sigaction N N N N N N ERRNO(13)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 rt_sigprocmask N N N N N N ERRNO(14)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 rt_sigreturn N N N N N N ERRNO(15)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 ioctl N N N N N N ERRNO(16)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 pread64 105 N N N N N ERRNO(17)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 pwrite64 N N N N N N ERRNO(18)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 readv N N N N N N ERRNO(19)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 writev N N N N N N ERRNO(20)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 lseek 103 104 N N N N ERRNO(8)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mmap N N N N N N ERRNO(9)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mprotect N N N N N N ERRNO(10)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 munmap N N N N N N ERRNO(11)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 brk N N N N N N ERRNO(12)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 rt_sigaction N N N N N N ERRNO(13)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 rt_sigprocmask N N N N N N ERRNO(14)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 rt_sigreturn N N N N N N ERRNO(15)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 ioctl N N N N N N ERRNO(16)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 pread64 105 N N N N N ERRNO(17)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 pwrite64 N N N N N N ERRNO(18)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 readv N N N N N N ERRNO(19)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 writev N N N N N N ERRNO(20)
+53-sim-binary_tree +aarch64,+loongarch64 poll 102 N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 lseek 103 104 N N N N ERRNO(8)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 mmap N N N N N N ERRNO(9)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 mprotect N N N N N N ERRNO(10)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 munmap N N N N N N ERRNO(11)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 brk N N N N N N ERRNO(12)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 rt_sigaction N N N N N N ERRNO(13)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 rt_sigprocmask N N N N N N ERRNO(14)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 rt_sigreturn N N N N N N ERRNO(15)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 ioctl N N N N N N ERRNO(16)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 pread64 105 N N N N N ERRNO(17)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 pwrite64 N N N N N N ERRNO(18)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 readv N N N N N N ERRNO(19)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 writev N N N N N N ERRNO(20)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 lseek 103 104 N N N N ERRNO(8)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 mmap N N N N N N ERRNO(9)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 mprotect N N N N N N ERRNO(10)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 munmap N N N N N N ERRNO(11)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 brk N N N N N N ERRNO(12)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 rt_sigaction N N N N N N ERRNO(13)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 rt_sigprocmask N N N N N N ERRNO(14)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 rt_sigreturn N N N N N N ERRNO(15)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 ioctl N N N N N N ERRNO(16)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 pread64 105 N N N N N ERRNO(17)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 pwrite64 N N N N N N ERRNO(18)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 readv N N N N N N ERRNO(19)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 writev N N N N N N ERRNO(20)
53-sim-binary_tree +x86_64,+ppc64le access N N N N N N ERRNO(21)
-53-sim-binary_tree +aarch64 access N N N N N N ALLOW
+53-sim-binary_tree +aarch64,+loongarch64 access N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le pipe N N N N N N ERRNO(22)
-53-sim-binary_tree +aarch64 pipe N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 select N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 select N N N N N N ALLOW
+53-sim-binary_tree +aarch64,+loongarch64 pipe N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 select N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 select N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le select 106 107 N N N N ERRNO(23)
-53-sim-binary_tree +aarch64 select 106 107 N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 sched_yield N N N N N N ERRNO(24)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mremap N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mremap 108 109 N N N N ERRNO(25)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 msync N N N N N N ERRNO(26)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 mincore N N N N N N ERRNO(27)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 madvise N N N N N N ERRNO(28)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 dup 112 N N N N N ERRNO(32)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 dup 5678 N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 sched_yield N N N N N N ERRNO(24)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mremap N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mremap 108 109 N N N N ERRNO(25)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 msync N N N N N N ERRNO(26)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 mincore N N N N N N ERRNO(27)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 madvise N N N N N N ERRNO(28)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 dup 112 N N N N N ERRNO(32)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 dup 5678 N N N N N ALLOW
+53-sim-binary_tree +aarch64,+loongarch64 select 106 107 N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 sched_yield N N N N N N ERRNO(24)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 mremap N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 mremap 108 109 N N N N ERRNO(25)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 msync N N N N N N ERRNO(26)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 mincore N N N N N N ERRNO(27)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 madvise N N N N N N ERRNO(28)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 dup 112 N N N N N ERRNO(32)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 dup 5678 N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 sched_yield N N N N N N ERRNO(24)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 mremap N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 mremap 108 109 N N N N ERRNO(25)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 msync N N N N N N ERRNO(26)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 mincore N N N N N N ERRNO(27)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 madvise N N N N N N ERRNO(28)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 dup 112 N N N N N ERRNO(32)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 dup 5678 N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le dup2 N N N N N N ERRNO(33)
-53-sim-binary_tree +aarch64 dup2 N N N N N N ALLOW
+53-sim-binary_tree +aarch64,+loongarch64 dup2 N N N N N N ALLOW
53-sim-binary_tree +x86_64,+ppc64le pause N N N N N N ERRNO(34)
-53-sim-binary_tree +aarch64 pause N N N N N N ALLOW
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 nanosleep N N N N N N ERRNO(35)
-53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+aarch64 getitimer N N N N N N ERRNO(36)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 nanosleep N N N N N N ERRNO(35)
-53-sim-binary_tree +x86_64,+ppc64le,+aarch64 getitimer N N N N N N ERRNO(36)
+53-sim-binary_tree +aarch64,+loongarch64 pause N N N N N N ALLOW
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 nanosleep N N N N N N ERRNO(35)
+53-sim-binary_tree +x86_64,+ppc64le,+sw_64,+loongarch64,+aarch64 getitimer N N N N N N ERRNO(36)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 nanosleep N N N N N N ERRNO(35)
+53-sim-binary_tree +x86_64,+ppc64le,+aarch64,+loongarch64 getitimer N N N N N N ERRNO(36)
53-sim-binary_tree +x86_64,+ppc64le alarm N N N N N N ERRNO(37)
-53-sim-binary_tree +sw_64,+aarch64 alarm N N N N N N ALLOW
-53-sim-binary_tree +aarch64 alarm N N N N N N ALLOW
+53-sim-binary_tree +aarch64,+loongarch64 alarm N N N N N N ALLOW
test type: bpf-valgrind
@ -803,55 +803,55 @@ index ba3244c..e63aa12 100644
action KILL;
#
diff --git a/tests/56-basic-iterate_syscalls.c b/tests/56-basic-iterate_syscalls.c
index c5bcba5..333b863 100644
index 5e7ab67..b514afa 100644
--- a/tests/56-basic-iterate_syscalls.c
+++ b/tests/56-basic-iterate_syscalls.c
@@ -34,6 +34,7 @@ unsigned int arch_list[] = {
@@ -33,6 +33,7 @@ unsigned int arch_list[] = {
SCMP_ARCH_X32,
SCMP_ARCH_ARM,
SCMP_ARCH_SW_64,
SCMP_ARCH_AARCH64,
+ SCMP_ARCH_LOONGARCH64,
SCMP_ARCH_MIPS,
SCMP_ARCH_MIPS64,
SCMP_ARCH_MIPS64N32,
diff --git a/tests/56-basic-iterate_syscalls.py b/tests/56-basic-iterate_syscalls.py
index d52b36d..9689adb 100755
index 77a5b89..d69dd0c 100755
--- a/tests/56-basic-iterate_syscalls.py
+++ b/tests/56-basic-iterate_syscalls.py
@@ -34,6 +34,7 @@ arch_list = ["x86",
@@ -33,6 +33,7 @@ arch_list = ["x86",
"x32",
"arm",
"sw_64",
"aarch64",
+ "loongarch64",
"mipsel",
"mipsel64",
"mipsel64n32",
diff --git a/tests/regression b/tests/regression
index 3e08bc5..d486578 100755
index f938b1b..19f9323 100755
--- a/tests/regression
+++ b/tests/regression
@@ -25,6 +25,7 @@ GLBL_ARCH_LE_SUPPORT=" \
@@ -24,6 +24,7 @@
GLBL_ARCH_LE_SUPPORT=" \
x86 x86_64 x32 \
arm aarch64 \
sw_64 \
+ loongarch64 \
mipsel mipsel64 mipsel64n32 \
ppc64le \
riscv64"
@@ -46,6 +47,7 @@ GLBL_ARCH_64B_SUPPORT=" \
@@ -44,6 +45,7 @@ GLBL_ARCH_32B_SUPPORT=" \
GLBL_ARCH_64B_SUPPORT=" \
x86_64 \
aarch64 \
sw_64 \
+ loongarch64 \
mips64 \
parisc64 \
ppc64 \
@@ -798,7 +800,7 @@ function run_test_live() {
@@ -796,7 +798,7 @@ function run_test_live() {
# setup the arch specific return values
case "$arch" in
- x86|x86_64|x32|arm|aarch64|sw_64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64)
+ x86|x86_64|x32|arm|aarch64|loongarch64|sw_64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64)
- x86|x86_64|x32|arm|aarch64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64)
+ x86|x86_64|x32|arm|aarch64|loongarch64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64)
rc_kill_process=159
rc_kill=159
rc_allow=160
@ -931,5 +931,5 @@ index ac3a238..18d7569 100644
* The MIPS architecture tokens
*/
--
2.27.0
2.33.0

View File

@ -1,6 +1,6 @@
Name: libseccomp
Version: 2.5.3
Release: 4
Release: 5
Summary: Interface to the syscall filtering mechanism
License: LGPLv2
URL: https://github.com/seccomp/libseccomp
@ -81,6 +81,9 @@ make check
%{_mandir}/man*/*
%changelog
* Thu Sep 21 2023 panchenbo <panchenbo@kylinsec.com.cn> - 2.5.3-5
- fix test fail
* Thu Aug 31 2023 panchenbo <panchenbo@kylinsec.com.cn> - 2.5.3-4
- add sw_64 and loongarch64 support