From: Felix Geyer Date: Sun, 24 Nov 2024 20:54:16 +0000 (+0100) Subject: libseccomp (2.5.5-2) unstable; urgency=medium X-Git-Tag: archive/raspbian/2.5.5-2+rpi1^2~13 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=27531fe62ec06bed0d06e9d61888146a98d337ee;p=libseccomp.git libseccomp (2.5.5-2) unstable; urgency=medium * Revert: Dynamically skip autopkgtests when the test runner already applies seccomp restrictions. - Container based backends usually apply a seccomp filter so it's better to declare the isolation-machine restriction. * Backport support for syscalls up to kernel v6.12-rc5 and loongarch64. (Closes: #1051323) - syscalls_update_to_Linux_v6.0.patch - tests_add_fstatfs_syscall_in_the_06-sim-actions.patch - arch_Add_64-bit_LoongArch_support.patch - tests_Add_64-bit_LoongArch_support.patch - doc_update_README_and_manpage_for_64-bit_LoongArch.patch - tests_Fix_wrong_syscall-error_in_test_29.patch - tests_only_use_bogus_syscall_numbers_in_test_29.patch - arch_unify_handling_of_syscall.tbl_in_arch-syscall-validate.patch - arch_adapt_arch-syscall-validate_to_Linux_6.11.patch - syscalls_Update_the_syscall_table_for_Linux_v6.12-rc5.patch [dgit import unpatched libseccomp 2.5.5-2] --- 27531fe62ec06bed0d06e9d61888146a98d337ee diff --cc debian/changelog index 0000000,0000000..af40261 new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,396 @@@ ++libseccomp (2.5.5-2) unstable; urgency=medium ++ ++ * Revert: Dynamically skip autopkgtests when the test runner already applies ++ seccomp restrictions. ++ - Container based backends usually apply a seccomp filter so it's better ++ to declare the isolation-machine restriction. ++ * Backport support for syscalls up to kernel v6.12-rc5 and loongarch64. ++ (Closes: #1051323) ++ - syscalls_update_to_Linux_v6.0.patch ++ - tests_add_fstatfs_syscall_in_the_06-sim-actions.patch ++ - arch_Add_64-bit_LoongArch_support.patch ++ - tests_Add_64-bit_LoongArch_support.patch ++ - doc_update_README_and_manpage_for_64-bit_LoongArch.patch ++ - tests_Fix_wrong_syscall-error_in_test_29.patch ++ - tests_only_use_bogus_syscall_numbers_in_test_29.patch ++ - arch_unify_handling_of_syscall.tbl_in_arch-syscall-validate.patch ++ - arch_adapt_arch-syscall-validate_to_Linux_6.11.patch ++ - syscalls_Update_the_syscall_table_for_Linux_v6.12-rc5.patch ++ ++ -- Felix Geyer Sun, 24 Nov 2024 21:54:16 +0100 ++ ++libseccomp (2.5.5-1) unstable; urgency=medium ++ ++ * New upstream release. ++ ++ -- Felix Geyer Thu, 04 Jan 2024 18:29:54 +0100 ++ ++libseccomp (2.5.4-2) unstable; urgency=medium ++ ++ * Fix watch file. (Closes: #1050659) ++ * Dynamically skip autopkgtests when the test runner already applies seccomp ++ restrictions. ++ - Drop isolation-machine restriction. ++ * Fix FTBFS with setuptools. (Closes: #1054788, #1033641) ++ - Add python_Fix_distutils_DeprecationWarning.patch ++ - Add python_single_version_externally_managed.patch ++ - Explicitly build-depend on python3-setuptools ++ ++ -- Felix Geyer Sun, 29 Oct 2023 15:13:08 +0100 ++ ++libseccomp (2.5.4-1) unstable; urgency=medium ++ ++ * New upstream release. ++ ++ -- Felix Geyer Thu, 21 Apr 2022 22:23:12 +0200 ++ ++libseccomp (2.5.3-2) unstable; urgency=medium ++ ++ [ Alex Murray ] ++ * Fix python version check in debian/rules to properly handle python3.10 ++ to resolve FTBFS (Closes: #999364) ++ ++ -- Felix Geyer Thu, 18 Nov 2021 17:52:23 +0100 ++ ++libseccomp (2.5.3-1) experimental; urgency=medium ++ ++ * New upstream release. ++ * Drop patches from 2.5.2-2, fixed upstream. ++ ++ -- Felix Geyer Sat, 06 Nov 2021 16:46:51 +0100 ++ ++libseccomp (2.5.2-2) unstable; urgency=medium ++ ++ * Revert mips and powerpc multiplexed syscall handling. ++ - Fixes test suite failures. (Closes: #994285) ++ ++ -- Felix Geyer Sun, 03 Oct 2021 23:26:59 +0200 ++ ++libseccomp (2.5.2-1) unstable; urgency=medium ++ ++ * New upstream release. ++ * Update watch file. ++ ++ -- Felix Geyer Tue, 07 Sep 2021 11:14:34 +0200 ++ ++libseccomp (2.5.1-1) unstable; urgency=medium ++ ++ * New upstream release. ++ * Drop all patches as they have been applied upstream. ++ ++ -- Felix Geyer Mon, 21 Dec 2020 10:50:30 +0100 ++ ++libseccomp (2.5.0-3) unstable; urgency=medium ++ ++ * Cherry-pick patch from the 2.5 branch to fix test error on mips: ++ - arch_ensure_we_dont_munge_pseudo_syscall_numbers.patch ++ ++ -- Felix Geyer Sun, 08 Nov 2020 19:59:21 +0100 ++ ++libseccomp (2.5.0-2) unstable; urgency=medium ++ ++ * Upload to unstable. ++ * Cherry-pick patches from the 2.5 branch to fix build and test errors: ++ - build_undefine_mips_to_prevent_build_problems.patch ++ - tests_use_openat_and_fstat_instead_of_open_and_stat_syscalls.patch ++ ++ -- Felix Geyer Sun, 08 Nov 2020 15:49:41 +0100 ++ ++libseccomp (2.5.0-1) experimental; urgency=medium ++ ++ * New upstream release. ++ - Build-depend on gperf. ++ - Update symbols file. ++ * Remove patches that have been applied upstream: ++ - cython3.patch ++ - riscv64_support.patch ++ * Cherry-pick patches from the 2.5 branch: ++ - all_only_request_the_userspace_notification_fd_once.patch ++ - system_change_our_notification_fd_handling.patch ++ ++ -- Felix Geyer Sat, 24 Oct 2020 13:58:28 +0200 ++ ++libseccomp (2.4.4-1) unstable; urgency=medium ++ ++ * Team upload. ++ ++ [ Debian Janitor ] ++ * Set upstream metadata fields: Repository, Repository-Browse. ++ * Set upstream metadata fields: Bug-Database, Bug-Submit, Repository. ++ ++ [ Felix Geyer ] ++ * New upstream release. ++ * Download and verify orig gpg signature. ++ ++ -- Felix Geyer Sun, 20 Sep 2020 19:03:41 +0200 ++ ++libseccomp (2.4.3-1) unstable; urgency=medium ++ ++ * New upstream release. ++ * Drop patches that have been applied upstream: ++ - tests-rely-on-__SNR_xxx-instead-of-__NR_xxx-for-sysc.patch ++ - api_define__SNR_ppoll_again.patch ++ * Cherry-pick support for the riscv64 architecture. (Closes: #952386) ++ - Add riscv64_support.patch ++ ++ -- Felix Geyer Thu, 12 Mar 2020 23:35:13 +0100 ++ ++libseccomp (2.4.2-2) unstable; urgency=medium ++ ++ [ Christian Ehrhardt ] ++ * d/rules: fix potential FTFBS after full python3 switch ++ * d/t/control: drop python2 test following the removal of the package ++ ++ [ Felix Geyer ] ++ * Remove build-dependency on valgrind for mips64el as it's broken there. ++ * Backport patch to define __SNR_ppoll again. ++ - Add api_define__SNR_ppoll_again.patch ++ * Replace custom patch for cython3 with the upstream fix. ++ ++ -- Felix Geyer Fri, 15 Nov 2019 18:12:53 +0100 ++ ++libseccomp (2.4.2-1) unstable; urgency=medium ++ ++ [ Christian Ehrhardt ] ++ * New upstream release 2.4.2 for compatibility with newer kernels and ++ fixing FTBFS (LP: #1849785). ++ - drop d/p/python_install_dir.patch (now upstream) ++ - d/rules: adapt to python 3.8 lacking the m modifier on includes ++ see https://wiki.debian.org/Python/Python3.8 ++ - d/p/tests-rely-on-__SNR_xxx-instead-of-__NR_xxx-for-sysc.patch: fix ++ build time test on arm64 ++ ++ [ Felix Geyer ] ++ * Drop Python 2 bindings. (Closes: #936917) ++ - Add cython3.patch to use the Python 3 cython variant. ++ ++ -- Felix Geyer Wed, 13 Nov 2019 00:00:49 +0100 ++ ++libseccomp (2.4.1-2) unstable; urgency=medium ++ ++ * Remove build-dependency on valgrind for mipsel and x32 as it's broken ++ on those archs. ++ * Set Rules-Requires-Root: no. ++ ++ -- Felix Geyer Fri, 19 Jul 2019 00:03:34 +0200 ++ ++libseccomp (2.4.1-1) unstable; urgency=medium ++ ++ * New upstream release. ++ - Addresses CVE-2019-9893 (Closes: #924646) ++ * Drop all patches for parisc arch support, merged upstream. ++ * Build-depend on valgrind to run more unit tests. ++ * Run dh_auto_configure for every python 3 version to install the extension ++ in the correct path. ++ * Update the symbols file. ++ * Adapt autopkgtest to new upstream version: ++ - Build against pthread ++ - Build scmp_api_level tool ++ * Upgrade to debhelper compat level 12. ++ - Add d/not-installed file ++ * Fix install path of the python module. ++ - Add python_install_dir.patch ++ * Add autopkgtest for python packages. ++ ++ -- Felix Geyer Wed, 17 Jul 2019 23:23:28 +0200 ++ ++libseccomp (2.3.3-4) unstable; urgency=medium ++ ++ [ Ondřej Nový ] ++ * d/copyright: Change Format URL to correct one ++ ++ [ Helmut Grohne ] ++ * Fix FTCBFS: (Closes: #903556) ++ + Multiarchify python Build-Depends. ++ + Annotate cython dependencies with :native for now. ++ + Drop noop dh_auto_build invocations. ++ + Pass a suitable PYTHONPATH for python2. ++ + Pass _PYTHON_SYSCONFIGDATA_NAME for python3. ++ ++ -- Felix Geyer Sun, 10 Feb 2019 12:25:44 +0100 ++ ++libseccomp (2.3.3-3) unstable; urgency=medium ++ ++ * Fix FTBFS: Adapt to renamed README file. (Closes: #902767) ++ ++ -- Felix Geyer Sun, 01 Jul 2018 20:32:03 +0200 ++ ++libseccomp (2.3.3-2) unstable; urgency=medium ++ ++ [ Helmut Grohne ] ++ * Support the nopython build profile. (Closes: #897057) ++ ++ [ Felix Geyer ] ++ * Run upstream "live" tests in an autopkgtest. ++ ++ -- Felix Geyer Sun, 13 May 2018 09:53:08 +0200 ++ ++libseccomp (2.3.3-1) unstable; urgency=medium ++ ++ * New upstream release. (Closes: #895417) ++ - Adds pkey_mprotect syscall. (Closes: #893722) ++ * Refresh parisc patch. ++ * Move libseccomp2 back to /usr/lib. (Closes: #894988) ++ * Make test failures cause the build to fail. (Closes: 877901) ++ * Build python bindings. (Closes: #810712) ++ * Switch to debhelper compat level 10. ++ * Move git repo to salsa.debian.org ++ * Add myself to Uploaders. ++ ++ -- Felix Geyer Sun, 22 Apr 2018 23:55:03 +0200 ++ ++libseccomp (2.3.1-2.1) unstable; urgency=medium ++ ++ [ Martin Pitt ] ++ * Non-maintainer upload with Kees' consent. ++ ++ [ Laurent Bigonville ] ++ * Ensure strict enough generated dependencies (Closes: #844496) ++ ++ -- Martin Pitt Thu, 17 Nov 2016 10:16:44 +0100 ++ ++libseccomp (2.3.1-2) unstable; urgency=medium ++ ++ * Add hppa (parisc) support (Closes: #820501) ++ ++ -- Luca Bruno Sat, 28 May 2016 20:05:01 +0200 ++ ++libseccomp (2.3.1-1) unstable; urgency=medium ++ ++ * New upstream release ++ * control: add Vcs-* fields ++ ++ -- Luca Bruno Tue, 05 Apr 2016 22:16:55 +0200 ++ ++libseccomp (2.3.0-1) unstable; urgency=medium ++ ++ * New upstream release ++ + drop all patches, applied upstream ++ * libseccomp2: update symbols file ++ * control: add myself to uploaders ++ * control: bump policy version ++ ++ -- Luca Bruno Sun, 03 Apr 2016 00:31:09 +0200 ++ ++libseccomp (2.2.3-3) unstable; urgency=medium ++ ++ [ Martin Pitt ] ++ * debian/patches/add-x86-32bit-socket-calls.patch: add the newly ++ connected direct socket calls. (Closes: #809556) ++ * debian/add-membarrier.patch: add membarrier syscall. ++ * Backport patches for ppc/ppc64 and s390x. (Closes: #800818) ++ ++ -- Kees Cook Tue, 01 Sep 2015 15:37:31 -0700 ++ ++libseccomp (2.2.3-2) unstable; urgency=medium ++ ++ * debian/control: enable mips64, mips64el, and x32 architectures, ++ thanks to Helmut Grohne (Closes: 797383). ++ ++ -- Kees Cook Tue, 01 Sep 2015 15:37:31 -0700 ++ ++libseccomp (2.2.3-1) unstable; urgency=medium ++ ++ * New upstream release (Closes: 793032). ++ * debian/control: update Homepage (Closes: 793033). ++ ++ -- Kees Cook Mon, 03 Aug 2015 15:06:08 -0700 ++ ++libseccomp (2.2.1-2) unstable; urgency=medium ++ ++ * debian/{rules,*.install}: move to /lib, thanks to Michael Biebl ++ (Closes: 788923). ++ ++ -- Kees Cook Tue, 16 Jun 2015 12:45:08 -0700 ++ ++libseccomp (2.2.1-1) unstable; urgency=medium ++ ++ * New upstream release (Closes: 785428). ++ - debian/patches dropped: incorporated upstream. ++ * debian/libseccomp2.symbols: include only documented symbols. ++ * debian/libseccomp-dev.install: include static library (Closes: 698508). ++ * debian/control: ++ - add newly supported arm64, mips, and mipsel. ++ - bump standards version, no changes needed. ++ ++ -- Kees Cook Sat, 16 May 2015 08:15:26 -0700 ++ ++libseccomp (2.1.1-1) unstable; urgency=low ++ ++ * New upstream release (Closes: 733293). ++ * copyright: add a few missed people. ++ * rules: adjusted for new test target. ++ * libseccomp2.symbols: drop accidentally exported functions. ++ * control: ++ - bump standards, no changes needed. ++ - add armel target ++ ++ -- Kees Cook Sat, 12 Apr 2014 10:44:22 -0700 ++ ++libseccomp (2.1.0+dfsg-1) unstable; urgency=low ++ ++ * Rebuild source package without accidental binaries (Closes: 725617). ++ - debian/watch: mangle upstream version check. ++ * debian/rules: make tests non-fatal while upstream fixes them ++ (Closes: 721292). ++ ++ -- Kees Cook Sun, 06 Oct 2013 15:05:51 -0700 ++ ++libseccomp (2.1.0-1) unstable; urgency=low ++ ++ * New upstream release (Closes: 718398): ++ - dropped debian/patches/manpage-dashes.patch: taken upstream. ++ - dropped debian/patches/include-unistd.patch: not needed. ++ - debian/patches/testsuite-x86-write.patch: taken upstream. ++ - ABI bump: moved from libseccomp1 to libseccomp2. ++ * debian/control: ++ - added Arch: armhf, now supported upstream. ++ - added seccomp binary package for helper tools. ++ * Added debian/patches/manpage-typo.patch: spelling fix. ++ * Added debian/patches/build-ldflags.patch: fix LDFLAGS handling. ++ ++ -- Kees Cook Tue, 13 Aug 2013 00:02:01 -0700 ++ ++libseccomp (1.0.1-2) unstable; urgency=low ++ ++ * debian/rules: enable testsuite at build time, thanks to ++ Stéphane Graber (Closes: 698803). ++ * Added debian/patches/include-unistd.patch: detect location of ++ asm/unistd.h correctly. ++ * Added debian/patches/testsuite-x86-write.patch: skip the "write" ++ syscall correctly on x86. ++ * debian/control: bump standards to 3.9.4, no changes needed. ++ ++ -- Kees Cook Wed, 23 Jan 2013 13:11:53 -0800 ++ ++libseccomp (1.0.1-1) unstable; urgency=low ++ ++ * New upstream release. ++ * debian/control: only build on amd64 and i386 (Closes: 687368). ++ ++ -- Kees Cook Fri, 07 Dec 2012 11:38:03 -0800 ++ ++libseccomp (1.0.0-1) unstable; urgency=low ++ ++ * New upstream release. ++ - bump ABI. ++ - drop build verbosity patch, use upstream V=1 instead. ++ * libseccomp-dev.manpages: fix build location (Closes: 682152, 682471). ++ * debian/patches/pkgconfig-macro.patch: use literals for macro. ++ ++ -- Kees Cook Fri, 03 Aug 2012 16:59:41 -0700 ++ ++libseccomp (0.1.0-1) unstable; urgency=low ++ ++ * New upstream release. ++ - drop patches taken upstream: ++ - libexecdir.patch ++ - pass-flags.patch ++ ++ -- Kees Cook Fri, 08 Jun 2012 12:32:22 -0700 ++ ++libseccomp (0.0.0~20120605-1) unstable; urgency=low ++ ++ * Initial release (Closes: #676257). ++ ++ -- Kees Cook Tue, 05 Jun 2012 11:28:07 -0700 diff --cc debian/control index 0000000,0000000..592487b new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,64 @@@ ++Source: libseccomp ++Section: libs ++Priority: optional ++Maintainer: Kees Cook ++Uploaders: Luca Bruno , Felix Geyer ++Build-Depends: debhelper-compat (= 12), ++ linux-libc-dev, ++ dh-python , ++ python3-all-dev:any , ++ libpython3-all-dev , ++ cython3:native , ++ python3-setuptools , ++ valgrind [amd64 arm64 armhf i386 mips mips64 powerpc ppc64 ppc64el s390x] , ++ gperf ++Rules-Requires-Root: no ++Standards-Version: 3.9.7 ++Homepage: https://github.com/seccomp/libseccomp ++Vcs-Git: https://salsa.debian.org/debian/libseccomp.git ++Vcs-Browser: https://salsa.debian.org/debian/libseccomp ++ ++Package: libseccomp-dev ++Section: libdevel ++Architecture: linux-any ++Multi-Arch: same ++Pre-Depends: ${misc:Pre-Depends} ++Depends: libseccomp2 (= ${binary:Version}), ${misc:Depends} ++Suggests: seccomp ++Description: high level interface to Linux seccomp filter (development files) ++ This library provides a high level interface to constructing, analyzing ++ and installing seccomp filters via a BPF passed to the Linux Kernel's ++ prctl() syscall. ++ . ++ This package contains the development files. ++ ++Package: libseccomp2 ++Architecture: linux-any ++Multi-Arch: same ++Pre-Depends: ${misc:Pre-Depends} ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Description: high level interface to Linux seccomp filter ++ This library provides a high level interface to constructing, analyzing ++ and installing seccomp filters via a BPF passed to the Linux Kernel's ++ prctl() syscall. ++ ++Package: seccomp ++Section: utils ++Architecture: linux-any ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Suggests: libseccomp-dev ++Description: helper tools for high level interface to Linux seccomp filter ++ Provides helper tools for interacting with libseccomp. Currently, only ++ a single tool exists, providing a way to easily enumerate syscalls across ++ the supported architectures. ++ ++Package: python3-seccomp ++Build-Profiles: ++Architecture: linux-any ++Multi-Arch: same ++Section: python ++Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends} ++Description: high level interface to Linux seccomp filter (Python 3 bindings) ++ This library provides a high level interface to constructing, analyzing ++ and installing seccomp filters via a BPF passed to the Linux Kernel's ++ prctl() syscall. diff --cc debian/copyright index 0000000,0000000..307817f new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,39 @@@ ++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ ++Upstream-Name: libseccomp ++Source: https://sourceforge.net/projects/libseccomp/ ++ ++Files: * ++Copyright: 2012 Paul Moore ++ 2012 Ashley Lai ++ 2012 Corey Bryant ++ 2012 Eduardo Otubo ++ 2012 Eric Paris ++License: LGPL-2.1 ++ ++Files: tests/22-sim-basic_chains_array.tests ++Copyright: 2013 Vitaly Shukela ++License: LGPL-2.1 ++ ++Files: src/hash.* ++Copyright: 2006 Bob Jenkins ++License: LGPL-2.1 ++ ++Files: debian/* ++Copyright: 2012 Kees Cook ++License: LGPL-2.1 ++ ++License: LGPL-2.1 ++ This library is free software; you can redistribute it and/or modify it ++ under the terms of version 2.1 of the GNU Lesser General Public License as ++ published by the Free Software Foundation. ++ . ++ This library is distributed in the hope that it will be useful, but WITHOUT ++ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License ++ for more details. ++ . ++ You should have received a copy of the GNU Lesser General Public License ++ along with this library; if not, see . ++ . ++ On Debian systems, the complete text of the GNU Lesser General ++ Public License can be found in "/usr/share/common-licenses/LGPL-2.1". diff --cc debian/docs index 0000000,0000000..b43bf86 new file mode 100644 --- /dev/null +++ b/debian/docs @@@ -1,0 -1,0 +1,1 @@@ ++README.md diff --cc debian/gbp.conf index 0000000,0000000..c16083c new file mode 100644 --- /dev/null +++ b/debian/gbp.conf @@@ -1,0 -1,0 +1,9 @@@ ++[DEFAULT] ++upstream-tag = upstream/%(version)s ++debian-tag = debian/%(version)s ++pristine-tar = True ++upstream-branch = upstream ++debian-branch = debian/sid ++ ++[buildpackage] ++submodules = True diff --cc debian/libseccomp-dev.install index 0000000,0000000..b973af4 new file mode 100644 --- /dev/null +++ b/debian/libseccomp-dev.install @@@ -1,0 -1,0 +1,4 @@@ ++usr/include/* ++usr/lib/*/lib*.so ++usr/lib/*/lib*.a ++usr/lib/*/pkgconfig/* diff --cc debian/libseccomp-dev.manpages index 0000000,0000000..7c72677 new file mode 100644 --- /dev/null +++ b/debian/libseccomp-dev.manpages @@@ -1,0 -1,0 +1,1 @@@ ++debian/tmp/usr/share/man/man3/* diff --cc debian/libseccomp2.install index 0000000,0000000..3ddde58 new file mode 100644 --- /dev/null +++ b/debian/libseccomp2.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/lib/*/lib*.so.* diff --cc debian/libseccomp2.symbols index 0000000,0000000..d1823d0 new file mode 100644 --- /dev/null +++ b/debian/libseccomp2.symbols @@@ -1,0 -1,0 +1,34 @@@ ++libseccomp.so.2 libseccomp2 #MINVER# ++* Build-Depends-Package: libseccomp-dev ++ seccomp_api_get@Base 2.4.1 ++ seccomp_api_set@Base 2.4.1 ++ seccomp_attr_get@Base 0.0.0~20120605 ++ seccomp_attr_set@Base 0.0.0~20120605 ++ seccomp_export_bpf@Base 0.0.0~20120605 ++ seccomp_export_pfc@Base 0.0.0~20120605 ++ seccomp_init@Base 0.0.0~20120605 ++ seccomp_load@Base 0.0.0~20120605 ++ seccomp_release@Base 0.0.0~20120605 ++ seccomp_reset@Base 0.0.0~20120605 ++ seccomp_rule_add@Base 0.0.0~20120605 ++ seccomp_rule_add_exact@Base 0.0.0~20120605 ++ seccomp_syscall_priority@Base 0.0.0~20120605 ++ seccomp_syscall_resolve_name@Base 1.0.1 ++ seccomp_merge@Base 1.0.1 ++ seccomp_notify_alloc@Base 2.5.0 ++ seccomp_notify_fd@Base 2.5.0 ++ seccomp_notify_free@Base 2.5.0 ++ seccomp_notify_id_valid@Base 2.5.0 ++ seccomp_notify_receive@Base 2.5.0 ++ seccomp_notify_respond@Base 2.5.0 ++ seccomp_arch_add@Base 1.0.1 ++ seccomp_arch_exist@Base 1.0.1 ++ seccomp_arch_remove@Base 1.0.1 ++ seccomp_arch_native@Base 2.1.0 ++ seccomp_rule_add_array@Base 2.1.0 ++ seccomp_rule_add_exact_array@Base 2.1.0 ++ seccomp_syscall_resolve_name_arch@Base 2.1.0 ++ seccomp_syscall_resolve_num_arch@Base 2.1.0 ++ seccomp_arch_resolve_name@Base 2.2.1 ++ seccomp_syscall_resolve_name_rewrite@Base 2.2.1 ++ seccomp_version@Base 2.3.0 diff --cc debian/not-installed index 0000000,0000000..4f60595 new file mode 100644 --- /dev/null +++ b/debian/not-installed @@@ -1,0 -1,0 +1,3 @@@ ++usr/lib/python*/*-packages/install_files.txt ++usr/lib/python*/*-packages/seccomp-*.egg-info ++usr/lib/*/libseccomp.la diff --cc debian/patches/arch_Add_64-bit_LoongArch_support.patch index 0000000,0000000..ac7e0e4 new file mode 100644 --- /dev/null +++ b/debian/patches/arch_Add_64-bit_LoongArch_support.patch @@@ -1,0 -1,0 +1,457 @@@ ++From 6966ec77b195ac289ae168c7c5646d59a307f33f Mon Sep 17 00:00:00 2001 ++From: Xiaotian Wu ++Date: Tue, 9 Feb 2021 15:39:13 +0800 ++Subject: [PATCH] arch: Add 64-bit LoongArch support ++ ++Signed-off-by: Xiaotian Wu ++Signed-off-by: WANG Xuerui ++Acked-by: Tom Hromatka ++Signed-off-by: Paul Moore ++--- ++ include/seccomp.h.in | 12 ++++++++++ ++ src/Makefile.am | 1 + ++ src/arch-loongarch64.c | 42 ++++++++++++++++++++++++++++++++ ++ src/arch-loongarch64.h | 28 ++++++++++++++++++++++ ++ src/arch-syscall-dump.c | 4 ++++ ++ src/arch-syscall-validate | 50 +++++++++++++++++++++++++++++++++++++++ ++ src/arch.c | 7 ++++++ ++ src/gen_pfc.c | 2 ++ ++ src/python/libseccomp.pxd | 1 + ++ src/python/seccomp.pyx | 4 ++++ ++ src/syscalls.h | 4 ++++ ++ src/system.c | 1 + ++ tools/scmp_arch_detect.c | 3 +++ ++ tools/scmp_bpf_disasm.c | 2 ++ ++ tools/scmp_bpf_sim.c | 2 ++ ++ tools/util.c | 2 ++ ++ tools/util.h | 11 +++++++++ ++ 17 files changed, 176 insertions(+) ++ create mode 100644 src/arch-loongarch64.c ++ create mode 100644 src/arch-loongarch64.h ++ ++diff --git a/include/seccomp.h.in b/include/seccomp.h.in ++index dfbb2671..4ab10d9c 100644 ++--- a/include/seccomp.h.in +++++ b/include/seccomp.h.in ++@@ -152,6 +152,18 @@ struct scmp_arg_cmp { ++ #endif /* AUDIT_ARCH_AARCH64 */ ++ #define SCMP_ARCH_AARCH64 AUDIT_ARCH_AARCH64 ++ +++/** +++ * The LoongArch architecture tokens +++ */ +++/* 64-bit LoongArch audit support is upstream as of 5.19-rc1 */ +++#ifndef AUDIT_ARCH_LOONGARCH64 +++#ifndef EM_LOONGARCH +++#define EM_LOONGARCH 258 +++#endif /* EM_LOONGARCH */ +++#define AUDIT_ARCH_LOONGARCH64 (EM_LOONGARCH|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE) +++#endif /* AUDIT_ARCH_LOONGARCH64 */ +++#define SCMP_ARCH_LOONGARCH64 AUDIT_ARCH_LOONGARCH64 +++ ++ /** ++ * The MIPS architecture tokens ++ */ ++diff --git a/src/Makefile.am b/src/Makefile.am ++index 1ff0ee75..8c39d9e0 100644 ++--- a/src/Makefile.am +++++ b/src/Makefile.am ++@@ -32,6 +32,7 @@ SOURCES_ALL = \ ++ arch-x32.h arch-x32.c \ ++ arch-arm.h arch-arm.c \ ++ arch-aarch64.h arch-aarch64.c \ +++ arch-loongarch64.h arch-loongarch64.c \ ++ arch-mips.h arch-mips.c \ ++ arch-mips64.h arch-mips64.c \ ++ arch-mips64n32.h arch-mips64n32.c \ ++diff --git a/src/arch-loongarch64.c b/src/arch-loongarch64.c ++new file mode 100644 ++index 00000000..8268204d ++--- /dev/null +++++ b/src/arch-loongarch64.c ++@@ -0,0 +1,40 @@ +++/** +++ * Enhanced Seccomp 64-bit LoongArch Syscall Table +++ * +++ * Copyright (c) 2021 Xiaotian Wu +++ */ +++ +++/* +++ * This library is free software; you can redistribute it and/or modify it +++ * under the terms of version 2.1 of the GNU Lesser General Public License as +++ * published by the Free Software Foundation. +++ * +++ * This library is distributed in the hope that it will be useful, but WITHOUT +++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License +++ * for more details. +++ * +++ * You should have received a copy of the GNU Lesser General Public License +++ * along with this library; if not, see . +++ */ +++ +++#include +++#include +++#include +++ +++#include "arch.h" +++#include "arch-loongarch64.h" +++#include "syscalls.h" +++ +++ARCH_DEF(loongarch64) +++ +++const struct arch_def arch_def_loongarch64 = { +++ .token = SCMP_ARCH_LOONGARCH64, +++ .token_bpf = AUDIT_ARCH_LOONGARCH64, +++ .size = ARCH_SIZE_64, +++ .endian = ARCH_ENDIAN_LITTLE, +++ .syscall_resolve_name_raw = loongarch64_syscall_resolve_name, +++ .syscall_resolve_num_raw = loongarch64_syscall_resolve_num, +++ .syscall_rewrite = NULL, +++ .rule_add = NULL, +++}; ++diff --git a/src/arch-loongarch64.h b/src/arch-loongarch64.h ++new file mode 100644 ++index 00000000..c3c06af7 ++--- /dev/null +++++ b/src/arch-loongarch64.h ++@@ -0,0 +1,28 @@ +++/** +++ * Enhanced Seccomp 64-bit LoongArch Syscall Table +++ * +++ * Copyright (c) 2021 Xiaotian Wu +++ */ +++ +++/* +++ * This library is free software; you can redistribute it and/or modify it +++ * under the terms of version 2.1 of the GNU Lesser General Public License as +++ * published by the Free Software Foundation. +++ * +++ * This library is distributed in the hope that it will be useful, but WITHOUT +++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License +++ * for more details. +++ * +++ * You should have received a copy of the GNU Lesser General Public License +++ * along with this library; if not, see . +++ */ +++ +++#ifndef _ARCH_LOONGARCH64_H +++#define _ARCH_LOONGARCH64_H +++ +++#include "arch.h" +++ +++ARCH_DECL(loongarch64) +++ +++#endif ++diff --git a/src/arch-syscall-dump.c b/src/arch-syscall-dump.c ++index 843483b2..abc1680f 100644 ++--- a/src/arch-syscall-dump.c +++++ b/src/arch-syscall-dump.c ++@@ -34,6 +34,7 @@ ++ #include "arch-x86_64.h" ++ #include "arch-x32.h" ++ #include "arch-arm.h" +++#include "arch-loongarch64.h" ++ #include "arch-mips.h" ++ #include "arch-mips64.h" ++ #include "arch-mips64n32.h" ++@@ -107,6 +108,9 @@ int main(int argc, char *argv[]) ++ case SCMP_ARCH_AARCH64: ++ sys = aarch64_syscall_iterate(iter); ++ break; +++ case SCMP_ARCH_LOONGARCH64: +++ sys = loongarch64_syscall_iterate(iter); +++ break; ++ case SCMP_ARCH_MIPS: ++ case SCMP_ARCH_MIPSEL: ++ sys = mips_syscall_iterate(iter); ++diff --git a/src/arch-syscall-validate b/src/arch-syscall-validate ++index 0cb4d8f4..b2f62c6d 100755 ++--- a/src/arch-syscall-validate +++++ b/src/arch-syscall-validate ++@@ -306,6 +306,48 @@ function dump_lib_aarch64() { ++ dump_lib_arch aarch64 | mangle_lib_syscall aarch64 ++ } ++ +++# +++# Dump the loongarch64 syscall table +++# +++# Arguments: +++# 1 path to the kernel source +++# +++# Dump the architecture's syscall table to stdout. +++# +++function dump_sys_loongarch64() { +++ local sed_filter="" +++ +++ sed_filter+='s/__NR3264_fadvise64/223/;' +++ sed_filter+='s/__NR3264_fcntl/25/;' +++ sed_filter+='s/__NR3264_fstatfs/44/;' +++ sed_filter+='s/__NR3264_ftruncate/46/;' +++ sed_filter+='s/__NR3264_lseek/62/;' +++ sed_filter+='s/__NR3264_mmap/222/;' +++ sed_filter+='s/__NR3264_sendfile/71/;' +++ sed_filter+='s/__NR3264_statfs/43/;' +++ sed_filter+='s/__NR3264_truncate/45/;' +++ +++ gcc -E -dM -I$1/include/uapi \ +++ -D__BITS_PER_LONG=64 \ +++ -D__ARCH_WANT_SYS_CLONE \ +++ -D__ARCH_WANT_SYS_CLONE3 \ +++ $1/arch/loongarch/include/uapi/asm/unistd.h | \ +++ grep "^#define __NR_" | \ +++ sed '/__NR_syscalls/d' | \ +++ sed '/__NR_arch_specific_syscall/d' | \ +++ sed 's/#define[ \t]\+__NR_\([^ \t]\+\)[ \t]\+\(.*\)/\1,\2/' | \ +++ sed $sed_filter | sort +++} +++ +++# +++# Dump the loongarch64 library syscall table +++# +++# Dump the library's syscall table to stdout. +++# +++function dump_lib_loongarch64() { +++ dump_lib_arch loongarch64 | mangle_lib_syscall loongarch64 +++} +++ ++ # ++ # Dump the mips system syscall table ++ # ++@@ -619,6 +661,9 @@ function dump_sys() { ++ aarch64) ++ dump_sys_aarch64 "$2" ++ ;; +++ loongarch64) +++ dump_sys_loongarch64 "$2" +++ ;; ++ mips) ++ dump_sys_mips "$2" ++ ;; ++@@ -686,6 +731,9 @@ function dump_lib() { ++ aarch64) ++ dump_lib_aarch64 ++ ;; +++ loongarch64) +++ dump_lib_loongarch64 +++ ;; ++ mips) ++ dump_lib_mips ++ ;; ++@@ -750,6 +798,7 @@ function gen_csv() { ++ abi_list="" ++ abi_list+=" x86 x86_64 x32" ++ abi_list+=" arm aarch64" +++ abi_list+=" loongarch64" ++ abi_list+=" mips mips64 mips64n32" ++ abi_list+=" parisc parisc64" ++ abi_list+=" ppc ppc64" ++@@ -861,6 +910,7 @@ if [[ $opt_arches == "" ]]; then ++ opt_arches=" \ ++ x86 x86_64 x32 \ ++ arm aarch64 \ +++ loongarch64 \ ++ mips mips64 mips64n32 \ ++ parisc parisc64 \ ++ ppc ppc64 \ ++diff --git a/src/arch.c b/src/arch.c ++index 921e4557..8c45fa38 100644 ++--- a/src/arch.c +++++ b/src/arch.c ++@@ -35,6 +35,7 @@ ++ #include "arch-x32.h" ++ #include "arch-arm.h" ++ #include "arch-aarch64.h" +++#include "arch-loongarch64.h" ++ #include "arch-mips.h" ++ #include "arch-mips64.h" ++ #include "arch-mips64n32.h" ++@@ -63,6 +64,8 @@ const struct arch_def *arch_def_native = &arch_def_x86_64; ++ const struct arch_def *arch_def_native = &arch_def_arm; ++ #elif __aarch64__ ++ const struct arch_def *arch_def_native = &arch_def_aarch64; +++#elif __loongarch64 +++const struct arch_def *arch_def_native = &arch_def_loongarch64; ++ #elif __mips__ && _MIPS_SIM == _MIPS_SIM_ABI32 ++ #if __MIPSEB__ ++ const struct arch_def *arch_def_native = &arch_def_mips; ++@@ -141,6 +144,8 @@ const struct arch_def *arch_def_lookup(uint32_t token) ++ return &arch_def_arm; ++ case SCMP_ARCH_AARCH64: ++ return &arch_def_aarch64; +++ case SCMP_ARCH_LOONGARCH64: +++ return &arch_def_loongarch64; ++ case SCMP_ARCH_MIPS: ++ return &arch_def_mips; ++ case SCMP_ARCH_MIPSEL: ++@@ -197,6 +202,8 @@ const struct arch_def *arch_def_lookup_name(const char *arch_name) ++ return &arch_def_arm; ++ else if (strcmp(arch_name, "aarch64") == 0) ++ return &arch_def_aarch64; +++ else if (strcmp(arch_name, "loongarch64") == 0) +++ return &arch_def_loongarch64; ++ else if (strcmp(arch_name, "mips") == 0) ++ return &arch_def_mips; ++ else if (strcmp(arch_name, "mipsel") == 0) ++diff --git a/src/gen_pfc.c b/src/gen_pfc.c ++index 4916055c..bb217c8e 100644 ++--- a/src/gen_pfc.c +++++ b/src/gen_pfc.c ++@@ -61,6 +61,8 @@ static const char *_pfc_arch(const struct arch_def *arch) ++ return "arm"; ++ case SCMP_ARCH_AARCH64: ++ return "aarch64"; +++ case SCMP_ARCH_LOONGARCH64: +++ return "loongarch64"; ++ case SCMP_ARCH_MIPS: ++ return "mips"; ++ case SCMP_ARCH_MIPSEL: ++diff --git a/src/python/libseccomp.pxd b/src/python/libseccomp.pxd ++index 55f8207d..a6bd0b43 100644 ++--- a/src/python/libseccomp.pxd +++++ b/src/python/libseccomp.pxd ++@@ -38,6 +38,7 @@ cdef extern from "seccomp.h": ++ SCMP_ARCH_X32 ++ SCMP_ARCH_ARM ++ SCMP_ARCH_AARCH64 +++ SCMP_ARCH_LOONGARCH64 ++ SCMP_ARCH_MIPS ++ SCMP_ARCH_MIPS64 ++ SCMP_ARCH_MIPS64N32 ++diff --git a/src/python/seccomp.pyx b/src/python/seccomp.pyx ++index 5657577f..9891d761 100644 ++--- a/src/python/seccomp.pyx +++++ b/src/python/seccomp.pyx ++@@ -206,6 +206,7 @@ cdef class Arch: ++ X32 - 64-bit x86 using the x32 ABI ++ ARM - ARM ++ AARCH64 - 64-bit ARM +++ LOONGARCH64 - 64-bit LoongArch ++ MIPS - MIPS O32 ABI ++ MIPS64 - MIPS 64-bit ABI ++ MIPS64N32 - MIPS N32 ABI ++@@ -227,6 +228,7 @@ cdef class Arch: ++ X32 = libseccomp.SCMP_ARCH_X32 ++ ARM = libseccomp.SCMP_ARCH_ARM ++ AARCH64 = libseccomp.SCMP_ARCH_AARCH64 +++ LOONGARCH64 = libseccomp.SCMP_ARCH_LOONGARCH64 ++ MIPS = libseccomp.SCMP_ARCH_MIPS ++ MIPS64 = libseccomp.SCMP_ARCH_MIPS64 ++ MIPS64N32 = libseccomp.SCMP_ARCH_MIPS64N32 ++@@ -264,6 +266,8 @@ cdef class Arch: ++ self._token = libseccomp.SCMP_ARCH_ARM ++ elif arch == libseccomp.SCMP_ARCH_AARCH64: ++ self._token = libseccomp.SCMP_ARCH_AARCH64 +++ elif arch == libseccomp.SCMP_ARCH_LOONGARCH64: +++ self._token = libseccomp.SCMP_ARCH_LOONGARCH64 ++ elif arch == libseccomp.SCMP_ARCH_MIPS: ++ self._token = libseccomp.SCMP_ARCH_MIPS ++ elif arch == libseccomp.SCMP_ARCH_MIPS64: ++diff --git a/src/syscalls.h b/src/syscalls.h ++index 3a9e0cb5..10b2b7a2 100644 ++--- a/src/syscalls.h +++++ b/src/syscalls.h ++@@ -15,6 +15,7 @@ ++ #include "arch-aarch64.h" ++ #include "arch-arm.h" ++ #include "arch.h" +++#include "arch-loongarch64.h" ++ #include "arch-mips64.h" ++ #include "arch-mips64n32.h" ++ #include "arch-mips.h" ++@@ -51,6 +52,7 @@ struct arch_syscall_table { ++ int x32; ++ int arm; ++ int aarch64; +++ int loongarch64; ++ int mips; ++ int mips64; ++ int mips64n32; ++diff --git a/src/system.c b/src/system.c ++index 3d10e21d..e205de7a 100644 ++--- a/src/system.c +++++ b/src/system.c ++@@ -128,6 +128,7 @@ int sys_chk_seccomp_syscall(void) ++ case SCMP_ARCH_X86_64: ++ case SCMP_ARCH_ARM: ++ case SCMP_ARCH_AARCH64: +++ case SCMP_ARCH_LOONGARCH64: ++ case SCMP_ARCH_PPC64: ++ case SCMP_ARCH_PPC64LE: ++ case SCMP_ARCH_S390: ++diff --git a/tools/scmp_arch_detect.c b/tools/scmp_arch_detect.c ++index b6bd2bbd..c23cf7f6 100644 ++--- a/tools/scmp_arch_detect.c +++++ b/tools/scmp_arch_detect.c ++@@ -81,6 +81,9 @@ int main(int argc, char *argv[]) ++ case SCMP_ARCH_AARCH64: ++ printf("aarch64\n"); ++ break; +++ case SCMP_ARCH_LOONGARCH64: +++ printf("loongarch64\n"); +++ break; ++ case SCMP_ARCH_MIPS: ++ printf("mips\n"); ++ break; ++diff --git a/tools/scmp_bpf_disasm.c b/tools/scmp_bpf_disasm.c ++index b682de73..45726591 100644 ++--- a/tools/scmp_bpf_disasm.c +++++ b/tools/scmp_bpf_disasm.c ++@@ -484,6 +484,8 @@ int main(int argc, char *argv[]) ++ arch = AUDIT_ARCH_ARM; ++ else if (strcmp(optarg, "aarch64") == 0) ++ arch = AUDIT_ARCH_AARCH64; +++ else if (strcmp(optarg, "loongarch64") == 0) +++ arch = AUDIT_ARCH_LOONGARCH64; ++ else if (strcmp(optarg, "mips") == 0) ++ arch = AUDIT_ARCH_MIPS; ++ else if (strcmp(optarg, "mipsel") == 0) ++diff --git a/tools/scmp_bpf_sim.c b/tools/scmp_bpf_sim.c ++index 04edfbc3..7d31d790 100644 ++--- a/tools/scmp_bpf_sim.c +++++ b/tools/scmp_bpf_sim.c ++@@ -259,6 +259,8 @@ int main(int argc, char *argv[]) ++ arch = AUDIT_ARCH_ARM; ++ else if (strcmp(optarg, "aarch64") == 0) ++ arch = AUDIT_ARCH_AARCH64; +++ else if (strcmp(optarg, "loongarch64") == 0) +++ arch = AUDIT_ARCH_LOONGARCH64; ++ else if (strcmp(optarg, "mips") == 0) ++ arch = AUDIT_ARCH_MIPS; ++ else if (strcmp(optarg, "mipsel") == 0) ++diff --git a/tools/util.c b/tools/util.c ++index afea6c90..327fc148 100644 ++--- a/tools/util.c +++++ b/tools/util.c ++@@ -44,6 +44,8 @@ ++ #define ARCH_NATIVE AUDIT_ARCH_ARM ++ #elif __aarch64__ ++ #define ARCH_NATIVE AUDIT_ARCH_AARCH64 +++#elif __loongarch64 +++#define ARCH_NATIVE AUDIT_ARCH_LOONGARCH64 ++ #elif __mips__ && _MIPS_SIM == _MIPS_SIM_ABI32 ++ #if __MIPSEB__ ++ #define ARCH_NATIVE AUDIT_ARCH_MIPS ++diff --git a/tools/util.h b/tools/util.h ++index 6c2ca33d..24b9ed6a 100644 ++--- a/tools/util.h +++++ b/tools/util.h ++@@ -37,6 +37,17 @@ ++ #define AUDIT_ARCH_AARCH64 (EM_AARCH64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE) ++ #endif /* AUDIT_ARCH_AARCH64 */ ++ +++/** +++ * The 64-bit LoongArch architecture tokens +++ */ +++/* 64-bit LoongArch audit support is upstream as of 5.19-rc1 */ +++#ifndef AUDIT_ARCH_LOONGARCH64 +++#ifndef EM_LOONGARCH +++#define EM_LOONGARCH 258 +++#endif /* EM_LOONGARCH */ +++#define AUDIT_ARCH_LOONGARCH64 (EM_LOONGARCH|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE) +++#endif /* AUDIT_ARCH_LOONGARCH64 */ +++ ++ /** ++ * The MIPS architecture tokens ++ */ diff --cc debian/patches/arch_adapt_arch-syscall-validate_to_Linux_6.11.patch index 0000000,0000000..8e5131d new file mode 100644 --- /dev/null +++ b/debian/patches/arch_adapt_arch-syscall-validate_to_Linux_6.11.patch @@@ -1,0 -1,0 +1,59 @@@ ++From 26e2b31a71d14e139730c2a4bbb626a249ad35b5 Mon Sep 17 00:00:00 2001 ++From: WANG Xuerui ++Date: Tue, 20 Aug 2024 12:16:55 +0800 ++Subject: [PATCH] arch: adapt arch-syscall-validate to Linux 6.11 ++ ++The aarch64, loongarch64 and riscv64 architectures have their syscall ++table sources changed to scripts/syscall.tbl, from the original ++inclusion of asm-generic/unistd.h. Make the script recognize the new ++format for these architectures. ++ ++Signed-off-by: WANG Xuerui ++Signed-off-by: Paul Moore ++--- ++ src/arch-syscall-validate | 18 ++++++++++++++++++ ++ 1 file changed, 18 insertions(+) ++ ++diff --git a/src/arch-syscall-validate b/src/arch-syscall-validate ++index b9808e8d..92229cd5 100755 ++--- a/src/arch-syscall-validate +++++ b/src/arch-syscall-validate ++@@ -287,6 +287,13 @@ function dump_lib_arm() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_aarch64() { +++ local syscall_tbl_file="$1/arch/arm64/tools/syscall_64.tbl" +++ if [[ -e $syscall_tbl_file ]]; then +++ dump_from_syscall_tbl "$syscall_tbl_file" \ +++ 64 renameat rlimit memfd_secret +++ return +++ fi +++ ++ local sed_filter="" ++ ++ sed_filter+='s/__NR3264_statfs/43/;' ++@@ -332,6 +339,11 @@ function dump_lib_aarch64() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_loongarch64() { +++ if [[ -e $1/arch/loongarch/kernel/Makefile.syscalls ]]; then +++ dump_from_syscall_tbl "$1/scripts/syscall.tbl" 64 +++ return +++ fi +++ ++ local sed_filter="" ++ ++ sed_filter+='s/__NR3264_fadvise64/223/;' ++@@ -543,6 +555,12 @@ function dump_lib_ppc64() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_riscv64() { +++ if [[ -e $1/arch/riscv/kernel/Makefile.syscalls ]]; then +++ dump_from_syscall_tbl "$1/scripts/syscall.tbl" \ +++ 64 riscv rlimit memfd_secret +++ return +++ fi +++ ++ local sed_filter="" ++ ++ sed_filter+='s/__NR3264_fadvise64/223/;' diff --cc debian/patches/arch_unify_handling_of_syscall.tbl_in_arch-syscall-validate.patch index 0000000,0000000..f0eee38 new file mode 100644 --- /dev/null +++ b/debian/patches/arch_unify_handling_of_syscall.tbl_in_arch-syscall-validate.patch @@@ -1,0 -1,0 +1,221 @@@ ++From cfce7b02f3fa44e36b7890f4ed92a3f4b8eb578b Mon Sep 17 00:00:00 2001 ++From: WANG Xuerui ++Date: Tue, 20 Aug 2024 12:05:46 +0800 ++Subject: [PATCH] arch: unify handling of syscall.tbl in arch-syscall-validate ++ ++Apart from de-duplication of logic, this refactor is also going to help ++syncing to the Linux 6.11+ definitions, where all architectures are ++converted to source their syscall definitions from syscall.tbl files. ++ ++The change is tested on Linux 6.2 sources to not affect the generated ++syscalls.csv apart from timestamp changes. ++ ++Signed-off-by: WANG Xuerui ++Signed-off-by: Paul Moore ++--- ++ src/arch-syscall-validate | 113 ++++++++++++++++---------------------- ++ 1 file changed, 47 insertions(+), 66 deletions(-) ++ ++diff --git a/src/arch-syscall-validate b/src/arch-syscall-validate ++index bbe2f4a8..b9808e8d 100755 ++--- a/src/arch-syscall-validate +++++ b/src/arch-syscall-validate ++@@ -162,6 +162,31 @@ function mangle_lib_syscall() { ++ sed $sed_filter | sed '/,-[0-9]\+$/d' ++ } ++ +++# +++# Dump syscalls matching specified tags from the given syscall.tbl file +++# +++# Arguments: +++# 1 path to the syscall.tbl file to dump +++# (rest) tags to match (except "common" which is always included) +++# +++# Dump the matched syscall table entries to stdout. +++# +++function dump_from_syscall_tbl() { +++ local file="$1" +++ shift +++ +++ local tag +++ local tag_regexp='^(common' +++ for tag in "$@"; do +++ tag_regexp="${tag_regexp}|${tag}" +++ done +++ tag_regexp="${tag_regexp}) " +++ +++ cat "$file" | grep -v '^#\|^$' | awk '{ print $2,$3,$1 }' | \ +++ grep -E "$tag_regexp" | awk '{ print $2","$3 }' | sort | \ +++ grep -Ev '^(reserved|unused)[0-9]+,' +++} +++ ++ # ++ # Dump the x86 system syscall table ++ # ++@@ -171,9 +196,7 @@ function mangle_lib_syscall() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_x86() { ++- cat $1/arch/x86/entry/syscalls/syscall_32.tbl | \ ++- grep -v "^#" | awk '{ print $3","$1 }' | \ ++- sort +++ dump_from_syscall_tbl "$1/arch/x86/entry/syscalls/syscall_32.tbl" i386 ++ } ++ ++ # ++@@ -194,9 +217,7 @@ function dump_lib_x86() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_x86_64() { ++- cat $1/arch/x86/entry/syscalls/syscall_64.tbl | \ ++- grep -v "^#" | sed '/^$/d' | awk '{ print $2,$3,$1 }' | \ ++- sed '/^x32/d' | awk '{ print $2","$3 }' | sort +++ dump_from_syscall_tbl "$1/arch/x86/entry/syscalls/syscall_64.tbl" 64 ++ } ++ ++ # ++@@ -217,9 +238,7 @@ function dump_lib_x86_64() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_x32() { ++- cat $1/arch/x86/entry/syscalls/syscall_64.tbl | \ ++- grep -v "^#" | sed '/^$/d' | awk '{ print $2,$3,$1 }' | \ ++- sed '/^64/d' | awk '{ print $2","$3 }' | sort +++ dump_from_syscall_tbl "$1/arch/x86/entry/syscalls/syscall_64.tbl" x32 ++ } ++ ++ # ++@@ -240,14 +259,12 @@ function dump_lib_x32() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_arm() { ++- cat $1/arch/arm/tools/syscall.tbl | grep -v "^#" | \ ++- sed -n "/[0-9]\+[ \t]\+\(common\|eabi\)/p" | \ ++- awk '{ print $3","$1 }' | sort | (cat -; \ ++- (cat $1/arch/arm/include/uapi/asm/unistd.h | \ ++- grep "^#define __ARM_NR_" | \ ++- grep -v "^#define __ARM_NR_BASE" | \ ++- sed 's/#define __ARM_NR_\([a-z0-9_]*\)[ \t]\+(__ARM_NR_BASE+\(.*\))/\1 983040 + \2/' | \ ++- awk '{ print $1","$2+$4 }')) | sort +++ dump_from_syscall_tbl "$1/arch/arm/tools/syscall.tbl" eabi | (cat -; \ +++ (cat $1/arch/arm/include/uapi/asm/unistd.h | \ +++ grep "^#define __ARM_NR_" | \ +++ grep -v "^#define __ARM_NR_BASE" | \ +++ sed 's/#define __ARM_NR_\([a-z0-9_]*\)[ \t]\+(__ARM_NR_BASE+\(.*\))/\1 983040 + \2/' | \ +++ awk '{ print $1","$2+$4 }')) | sort ++ } ++ ++ # ++@@ -381,11 +394,7 @@ function dump_lib_m68k() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_mips() { ++- cat $1/arch/mips/kernel/syscalls/syscall_o32.tbl | \ ++- grep -v "^#" | \ ++- sed -e '/[ \t]\+reserved[0-9]\+[ \t]\+/d;' | \ ++- sed -e '/[ \t]\+unused[0-9]\+[ \t]\+/d;' | \ ++- awk '{ print $3","$1 }' | sort +++ dump_from_syscall_tbl "$1/arch/mips/kernel/syscalls/syscall_o32.tbl" o32 ++ } ++ ++ # ++@@ -406,11 +415,7 @@ function dump_lib_mips() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_mips64() { ++- cat $1/arch/mips/kernel/syscalls/syscall_n64.tbl | \ ++- grep -v "^#" | \ ++- sed -e '/[ \t]\+reserved[0-9]\+[ \t]\+/d;' | \ ++- sed -e '/[ \t]\+unused[0-9]\+[ \t]\+/d;' | \ ++- awk '{ print $3","$1 }' | sort +++ dump_from_syscall_tbl "$1/arch/mips/kernel/syscalls/syscall_n64.tbl" n64 ++ } ++ ++ # ++@@ -431,11 +436,7 @@ function dump_lib_mips64() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_mips64n32() { ++- cat $1/arch/mips/kernel/syscalls/syscall_n32.tbl | \ ++- grep -v "^#" | \ ++- sed -e '/[ \t]\+reserved[0-9]\+[ \t]\+/d;' | \ ++- sed -e '/[ \t]\+unused[0-9]\+[ \t]\+/d;' | \ ++- awk '{ print $3","$1 }' | sort +++ dump_from_syscall_tbl "$1/arch/mips/kernel/syscalls/syscall_n32.tbl" n32 ++ } ++ ++ # ++@@ -456,11 +457,7 @@ function dump_lib_mips64n32() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_parisc() { ++- cat $1/arch/parisc/kernel/syscalls/syscall.tbl | \ ++- grep -v "^#" | \ ++- sed -n "/[0-9]\+[ \t]\+\(common\|32\)/p" | \ ++- awk '{ print $3","$1 }' | \ ++- sort +++ dump_from_syscall_tbl "$1/arch/parisc/kernel/syscalls/syscall.tbl" 32 ++ } ++ ++ # ++@@ -481,11 +478,7 @@ function dump_lib_parisc() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_parisc64() { ++- cat $1/arch/parisc/kernel/syscalls/syscall.tbl | \ ++- grep -v "^#" | \ ++- sed -n "/[0-9]\+[ \t]\+\(common\|64\)/p" | \ ++- awk '{ print $3","$1 }' | \ ++- sort +++ dump_from_syscall_tbl "$1/arch/parisc/kernel/syscalls/syscall.tbl" 64 ++ } ++ ++ # ++@@ -506,9 +499,8 @@ function dump_lib_parisc64() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_ppc() { ++- cat $1/arch/powerpc/kernel/syscalls/syscall.tbl | grep -v "^#" | \ ++- sed -ne "/[0-9]\+[ \t]\+\(common\|nospu\|32\)/p" | \ ++- awk '{ print $3","$1 }' | sort +++ dump_from_syscall_tbl "$1/arch/powerpc/kernel/syscalls/syscall.tbl" \ +++ nospu 32 ++ } ++ ++ # ++@@ -529,9 +521,8 @@ function dump_lib_ppc() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_ppc64() { ++- cat $1/arch/powerpc/kernel/syscalls/syscall.tbl | grep -v "^#" | \ ++- sed -ne "/[0-9]\+[ \t]\+\(common\|nospu\|64\)/p" | \ ++- awk '{ print $3","$1 }' | sort +++ dump_from_syscall_tbl "$1/arch/powerpc/kernel/syscalls/syscall.tbl" \ +++ nospu 64 ++ } ++ ++ # ++@@ -595,10 +586,7 @@ function dump_lib_riscv64() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_s390() { ++- cat $1/arch/s390/kernel/syscalls/syscall.tbl | grep -v "^#" | \ ++- sed -ne "/[0-9]\+[ \t]\+\(common\|32\)/p" | \ ++- awk '{ print $3","$1 }' | \ ++- sort +++ dump_from_syscall_tbl "$1/arch/s390/kernel/syscalls/syscall.tbl" 32 ++ } ++ ++ # ++@@ -619,10 +607,7 @@ function dump_lib_s390() { ++ # Dump the architecture's syscall table to stdout. ++ # ++ function dump_sys_s390x() { ++- cat $1/arch/s390/kernel/syscalls/syscall.tbl | grep -v "^#" | \ ++- sed -ne "/[0-9]\+[ \t]\+\(common\|64\)/p" | \ ++- awk '{ print $3","$1 }' | \ ++- sort +++ dump_from_syscall_tbl "$1/arch/s390/kernel/syscalls/syscall.tbl" 64 ++ } ++ ++ # diff --cc debian/patches/doc_update_README_and_manpage_for_64-bit_LoongArch.patch index 0000000,0000000..1dc04d3 new file mode 100644 --- /dev/null +++ b/debian/patches/doc_update_README_and_manpage_for_64-bit_LoongArch.patch @@@ -1,0 -1,0 +1,42 @@@ ++From 7179ff3e7c0bb9dca87848259114fe57938890a6 Mon Sep 17 00:00:00 2001 ++From: Xiaotian Wu ++Date: Tue, 9 Feb 2021 15:52:55 +0800 ++Subject: [PATCH] doc: update README and manpage for 64-bit LoongArch ++ ++Signed-off-by: Xiaotian Wu ++Acked-by: Tom Hromatka ++Signed-off-by: Paul Moore ++--- ++ README.md | 1 + ++ doc/man/man1/scmp_sys_resolver.1 | 6 +++--- ++ 2 files changed, 4 insertions(+), 3 deletions(-) ++ ++diff --git a/README.md b/README.md ++index 18a5d5ba..ccbad2fe 100644 ++--- a/README.md +++++ b/README.md ++@@ -33,6 +33,7 @@ The libseccomp library currently supports the architectures listed below: ++ * 64-bit x86 x32 ABI (x32) ++ * 32-bit ARM EABI (arm) ++ * 64-bit ARM (aarch64) +++* 64-bit LoongArch (loongarch64) ++ * 32-bit MIPS (mips) ++ * 32-bit MIPS little endian (mipsel) ++ * 64-bit MIPS (mips64) ++diff --git a/doc/man/man1/scmp_sys_resolver.1 b/doc/man/man1/scmp_sys_resolver.1 ++index 267187b9..37d48c16 100644 ++--- a/doc/man/man1/scmp_sys_resolver.1 +++++ b/doc/man/man1/scmp_sys_resolver.1 ++@@ -34,9 +34,9 @@ special manner by libseccomp depending on the operation. ++ .B \-a \fIARCH ++ The architecture to use for resolving the system call. Valid ++ .I ARCH ++-values are "x86", "x86_64", "x32", "arm", "aarch64", "mips", "mipsel", "mips64", ++-"mipsel64", "mips64n32", "mipsel64n32", "parisc", "parisc64", "ppc", "ppc64", ++-"ppc64le", "s390" and "s390x". +++values are "x86", "x86_64", "x32", "arm", "aarch64", "loongarch64", "mips", +++"mipsel", "mips64", "mipsel64", "mips64n32", "mipsel64n32", "parisc", +++"parisc64", "ppc", "ppc64", "ppc64le", "s390" and "s390x". ++ .TP ++ .B \-t ++ If necessary, translate the system call name to the proper system call number, diff --cc debian/patches/python_Fix_distutils_DeprecationWarning.patch index 0000000,0000000..41896cc new file mode 100644 --- /dev/null +++ b/debian/patches/python_Fix_distutils_DeprecationWarning.patch @@@ -1,0 -1,0 +1,55 @@@ ++From afbde6ddaec7c58c3b281d43b0b287269ffca9bd Mon Sep 17 00:00:00 2001 ++From: Tom Hromatka ++Date: Mon, 21 Mar 2022 11:24:25 -0600 ++Subject: [PATCH] python: Fix distutils DeprecationWarning ++ ++The python distutils package is deprecated. Utilize ++setuptools and cythonize instead. ++ ++ ./setup.py:26: DeprecationWarning: The distutils ++ package is deprecated and slated for removal in ++ Python 3.12. Use setuptools or check PEP 632 [1] for ++ potential alternatives ++ ++[1] https://peps.python.org/pep-0632/ ++ ++Fixes: https://github.com/seccomp/libseccomp/issues/372 ++Acked-by: Paul Moore ++Signed-off-by: Tom Hromatka ++--- ++ src/python/setup.py | 15 ++++++--------- ++ 1 file changed, 6 insertions(+), 9 deletions(-) ++ ++diff --git a/src/python/setup.py b/src/python/setup.py ++index 04191117..46f9a731 100755 ++--- a/src/python/setup.py +++++ b/src/python/setup.py ++@@ -23,9 +23,9 @@ ++ ++ import os ++ ++-from distutils.core import setup ++-from distutils.extension import Extension ++-from Cython.Distutils import build_ext +++from setuptools import setup +++from setuptools.extension import Extension +++from Cython.Build import cythonize ++ ++ setup( ++ name = "seccomp", ++@@ -37,12 +37,9 @@ ++ maintainer_email = "paul@paul-moore.com", ++ license = "LGPLv2.1", ++ platforms = "Linux", ++- cmdclass = {'build_ext': build_ext}, ++- ext_modules = [ +++ ext_modules = cythonize([ ++ Extension("seccomp", ["seccomp.pyx"], ++ # unable to handle libtool libraries directly ++- extra_objects=["../.libs/libseccomp.a"], ++- # fix build warnings, see PEP 3123 ++- extra_compile_args=["-fno-strict-aliasing"]) ++- ] +++ extra_objects=["../.libs/libseccomp.a"]), +++ ]) ++ ) diff --cc debian/patches/python_single_version_externally_managed.patch index 0000000,0000000..5e8be5b new file mode 100644 --- /dev/null +++ b/debian/patches/python_single_version_externally_managed.patch @@@ -1,0 -1,0 +1,14 @@@ ++Fix building with setuptools instead of distutils. ++ ++--- libseccomp-2.5.4.orig/src/python/Makefile.am +++++ libseccomp-2.5.4/src/python/Makefile.am ++@@ -40,7 +40,8 @@ build: ../libseccomp.la libseccomp.pxd s ++ ++ install-exec-local: build ++ ${PY_INSTALL} --install-lib=${DESTDIR}/${pyexecdir} \ ++- --record=${DESTDIR}/${pyexecdir}/install_files.txt +++ --record=${DESTDIR}/${pyexecdir}/install_files.txt \ +++ --single-version-externally-managed ++ ++ uninstall-local: ++ cat ${DESTDIR}/${pyexecdir}/install_files.txt | xargs ${RM} -f diff --cc debian/patches/series index 0000000,0000000..5eb36ae new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,14 @@@ ++python_Fix_distutils_DeprecationWarning.patch ++python_single_version_externally_managed.patch ++ ++# loongarch64 support ++syscalls_update_to_Linux_v6.0.patch ++tests_add_fstatfs_syscall_in_the_06-sim-actions.patch ++arch_Add_64-bit_LoongArch_support.patch ++tests_Add_64-bit_LoongArch_support.patch ++doc_update_README_and_manpage_for_64-bit_LoongArch.patch ++tests_Fix_wrong_syscall-error_in_test_29.patch ++tests_only_use_bogus_syscall_numbers_in_test_29.patch ++arch_unify_handling_of_syscall.tbl_in_arch-syscall-validate.patch ++arch_adapt_arch-syscall-validate_to_Linux_6.11.patch ++syscalls_Update_the_syscall_table_for_Linux_v6.12-rc5.patch diff --cc debian/patches/syscalls_Update_the_syscall_table_for_Linux_v6.12-rc5.patch index 0000000,0000000..cb26266 new file mode 100644 --- /dev/null +++ b/debian/patches/syscalls_Update_the_syscall_table_for_Linux_v6.12-rc5.patch @@@ -1,0 -1,0 +1,268 @@@ ++From f01e67509e45c672f4bdd643d94d90867cc19d90 Mon Sep 17 00:00:00 2001 ++From: WANG Xuerui ++Date: Tue, 20 Aug 2024 12:21:21 +0800 ++Subject: [PATCH] syscalls: Update the syscall table for Linux v6.12-rc5 ++ ++Due to the addition of fstat & newfstatat to the LoongArch syscall ABI, ++tests 38 and 55 have to be updated for the changed syscall numbers. ++ ++As for the PNR additions, normally they are allocated alphabetically for ++the syscalls introduced between updates of the table, but in the v2.5 ++release branch -10245 is already assigned to map_shadow_stack in ++commit 53267af3fb5 ("all: update the syscall table for Linux v6.7-rc3"). ++While the map_shadow_stack syscall is in fact available across all ++architectures, for consistency with v2.5.5 and later it is kept in the ++same position in this update. ++ ++Signed-off-by: WANG Xuerui ++Signed-off-by: Paul Moore ++--- ++ include/seccomp-syscalls.h | 51 +++++++++++++++++++++++++++--- ++ src/syscalls.csv | 26 +++++++++++---- ++ tests/38-basic-pfc_coverage.pfc | 6 ++-- ++ tests/55-basic-pfc_binary_tree.pfc | 20 ++++++------ ++ 4 files changed, 80 insertions(+), 23 deletions(-) ++ ++diff --git a/include/seccomp-syscalls.h b/include/seccomp-syscalls.h ++index 9488adc4..aff07d44 100644 ++--- a/include/seccomp-syscalls.h +++++ b/include/seccomp-syscalls.h ++@@ -276,6 +276,11 @@ ++ #define __PNR_memfd_secret -10244 ++ #define __PNR_map_shadow_stack -10245 ++ #define __PNR_fstat -10246 +++#define __PNR_atomic_barrier -10247 +++#define __PNR_atomic_cmpxchg_32 -10248 +++#define __PNR_getpagesize -10249 +++#define __PNR_riscv_hwprobe -10250 +++#define __PNR_uretprobe -10251 ++ ++ /* ++ * libseccomp syscall definitions ++@@ -1065,6 +1078,8 @@ ++ #define __SNR_listen __PNR_listen ++ #endif ++ +++#define __SNR_listmount __NR_listmount +++ ++ #define __SNR_listxattr __NR_listxattr ++ ++ #define __SNR_llistxattr __NR_llistxattr ++@@ -1083,6 +1098,12 @@ ++ ++ #define __SNR_lsetxattr __NR_lsetxattr ++ +++#define __SNR_lsm_get_self_attr __NR_lsm_get_self_attr +++ +++#define __SNR_lsm_list_modules __NR_lsm_list_modules +++ +++#define __SNR_lsm_set_self_attr __NR_lsm_set_self_attr +++ ++ #ifdef __NR_lstat ++ #define __SNR_lstat __NR_lstat ++ #else ++@@ -1219,6 +1246,8 @@ ++ ++ #define __SNR_mremap __NR_mremap ++ +++#define __SNR_mseal __NR_mseal +++ ++ #ifdef __NR_msgctl ++ #define __SNR_msgctl __NR_msgctl ++ #else ++@@ -1561,6 +1590,12 @@ ++ #define __SNR_riscv_flush_icache __PNR_riscv_flush_icache ++ #endif ++ +++#ifdef __NR_riscv_hwprobe +++#define __SNR_riscv_hwprobe __NR_riscv_hwprobe +++#else +++#define __SNR_riscv_hwprobe __PNR_riscv_hwprobe +++#endif +++ ++ #ifdef __NR_rmdir ++ #define __SNR_rmdir __NR_rmdir ++ #else ++@@ -2051,6 +2086,8 @@ ++ #define __SNR_statfs64 __PNR_statfs64 ++ #endif ++ +++#define __SNR_statmount __NR_statmount +++ ++ #ifdef __NR_statx ++ #define __SNR_statx __NR_statx ++ #else ++@@ -2259,6 +2296,12 @@ ++ ++ #define __SNR_unshare __NR_unshare ++ +++#ifdef __NR_uretprobe +++#define __SNR_uretprobe __NR_uretprobe +++#else +++#define __SNR_uretprobe __PNR_uretprobe +++#endif +++ ++ #ifdef __NR_uselib ++ #define __SNR_uselib __NR_uselib ++ #else ++diff --git a/src/syscalls.csv b/src/syscalls.csv ++index 1a831bfd..322fced6 100644 ++--- a/src/syscalls.csv +++++ b/src/syscalls.csv ++@@ -1,4 +1,4 @@ ++-#syscall (v6.7.0 2024-02-05),x86,x86_64,x32,arm,aarch64,loongarch64,mips,mips64,mips64n32,parisc,parisc64,ppc,ppc64,riscv64,s390,s390x +++#syscall (v6.12.0-rc5 2024-10-31),x86,x86_64,x32,arm,aarch64,loongarch64,mips,mips64,mips64n32,parisc,parisc64,ppc,ppc64,riscv64,s390,s390x ++ accept,PNR,43,43,285,202,202,168,42,42,35,35,330,330,202,PNR,PNR ++ accept4,364,288,288,366,242,242,334,293,297,320,320,344,344,242,364,364 ++ access,33,21,21,33,PNR,PNR,33,20,20,33,33,33,33,PNR,33,33 ++@@ -90,7 +90,7 @@ ++ fsmount,432,432,432,432,432,432,432,432,432,432,432,432,432,432,432,432 ++ fsopen,430,430,430,430,430,430,430,430,430,430,430,430,430,430,430,430 ++ fspick,433,433,433,433,433,433,433,433,433,433,433,433,433,433,433,433 ++-fstat,108,5,5,108,80,PNR,108,5,5,28,28,108,108,80,108,108 +++fstat,108,5,5,108,80,80,108,5,5,28,28,108,108,80,108,108 ++ fstat64,197,PNR,PNR,197,PNR,PNR,215,PNR,PNR,112,112,197,PNR,PNR,197,PNR ++ fstatat64,300,PNR,PNR,327,PNR,PNR,293,PNR,PNR,280,280,291,PNR,PNR,293,PNR ++ fstatfs,100,138,138,100,44,44,100,135,135,100,100,100,100,44,100,100 ++@@ -183,6 +183,7 @@ ++ link,9,86,86,9,PNR,PNR,9,84,84,9,9,9,9,PNR,9,9 ++ linkat,303,265,265,330,37,37,296,255,259,283,283,294,294,37,296,296 ++ listen,363,50,50,284,201,201,174,49,49,32,32,329,329,201,363,363 +++listmount,458,458,458,458,458,458,458,458,458,458,458,458,458,458,458,458 ++ listxattr,232,194,194,232,11,11,230,186,186,244,244,215,215,11,230,230 ++ llistxattr,233,195,195,233,12,12,231,187,187,245,245,216,216,12,231,231 ++ _llseek,140,PNR,PNR,140,PNR,PNR,140,PNR,PNR,140,140,140,140,PNR,140,PNR ++@@ -191,10 +192,13 @@ ++ lremovexattr,236,198,198,236,15,15,234,190,190,248,248,219,219,15,234,234 ++ lseek,19,8,8,19,62,62,19,8,8,19,19,19,19,62,19,19 ++ lsetxattr,227,189,189,227,6,6,225,181,181,239,239,210,210,6,225,225 +++lsm_get_self_attr,459,459,459,459,459,459,459,459,459,459,459,459,459,459,459,459 +++lsm_list_modules,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461 +++lsm_set_self_attr,460,460,460,460,460,460,460,460,460,460,460,460,460,460,460,460 ++ lstat,107,6,6,107,PNR,PNR,107,6,6,84,84,107,107,PNR,107,107 ++ lstat64,196,PNR,PNR,196,PNR,PNR,214,PNR,PNR,198,198,196,PNR,PNR,196,PNR ++ madvise,219,28,28,220,233,233,218,27,27,119,119,205,205,233,219,219 ++-map_shadow_stack,453,453,PNR,453,453,453,453,453,453,453,453,453,453,453,453,453 +++map_shadow_stack,453,453,453,453,453,453,453,453,453,453,453,453,453,453,453,453 ++ mbind,274,237,237,319,235,235,268,227,231,260,260,259,259,235,268,268 ++ membarrier,375,324,324,389,283,283,358,318,322,343,343,365,365,283,356,356 ++ memfd_create,356,319,319,385,279,279,354,314,318,340,340,360,360,279,350,350 ++@@ -226,6 +230,7 @@ ++ mq_timedsend_time64,418,PNR,PNR,418,PNR,PNR,418,PNR,418,418,PNR,418,PNR,PNR,418,PNR ++ mq_unlink,278,241,241,275,181,181,272,231,235,230,230,263,263,181,272,272 ++ mremap,163,25,25,163,216,216,167,24,24,163,163,163,163,216,163,163 +++mseal,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462 ++ msgctl,402,71,71,304,187,187,402,69,69,191,191,402,402,187,402,402 ++ msgget,399,68,68,303,186,186,399,66,66,190,190,399,399,186,399,399 ++ msgrcv,401,70,70,302,188,188,401,68,68,189,189,401,401,188,401,401 ++@@ -237,7 +242,7 @@ ++ munmap,91,11,11,91,215,215,91,11,11,91,91,91,91,215,91,91 ++ name_to_handle_at,341,303,303,370,264,264,339,298,303,325,325,345,345,264,335,335 ++ nanosleep,162,35,35,162,101,101,166,34,34,162,162,162,162,101,162,162 ++-newfstatat,PNR,262,262,PNR,79,PNR,PNR,252,256,PNR,PNR,PNR,291,79,PNR,293 +++newfstatat,PNR,262,262,PNR,79,79,PNR,252,256,PNR,PNR,PNR,291,79,PNR,293 ++ _newselect,142,PNR,PNR,142,PNR,PNR,142,22,22,142,142,142,142,PNR,142,PNR ++ nfsservctl,169,180,PNR,169,42,42,189,173,173,PNR,PNR,168,168,42,169,169 ++ nice,34,PNR,PNR,34,PNR,PNR,34,PNR,PNR,34,34,34,34,PNR,34,34 ++@@ -310,6 +315,7 @@ ++ request_key,287,249,249,310,218,218,281,240,244,265,265,270,270,218,279,279 ++ restart_syscall,0,219,219,0,128,128,253,213,214,0,0,0,0,128,7,7 ++ riscv_flush_icache,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,259,PNR,PNR +++riscv_hwprobe,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,258,PNR,PNR ++ rmdir,40,84,84,40,PNR,PNR,40,82,82,40,40,40,40,PNR,40,40 ++ rseq,386,334,334,398,293,293,367,327,331,354,354,387,387,293,383,383 ++ rtas,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,255,255,PNR,PNR,PNR ++@@ -415,6 +421,7 @@ ++ stat64,195,PNR,PNR,195,PNR,PNR,213,PNR,PNR,101,101,195,PNR,PNR,195,PNR ++ statfs,99,137,137,99,43,43,99,134,134,99,99,99,99,43,99,99 ++ statfs64,268,PNR,PNR,266,PNR,PNR,255,PNR,217,298,298,252,252,PNR,265,265 +++statmount,457,457,457,457,457,457,457,457,457,457,457,457,457,457,457,457 ++ statx,383,332,332,397,291,291,366,326,330,349,349,383,383,291,379,379 ++ stime,25,PNR,PNR,PNR,PNR,PNR,25,PNR,PNR,25,25,25,25,PNR,25,PNR ++ stty,31,PNR,PNR,PNR,PNR,PNR,31,PNR,PNR,PNR,PNR,31,31,PNR,PNR,PNR ++@@ -466,6 +473,7 @@ ++ unlink,10,87,87,10,PNR,PNR,10,85,85,10,10,10,10,PNR,10,10 ++ unlinkat,301,263,263,328,35,35,294,253,257,281,281,292,292,35,294,294 ++ unshare,310,272,272,337,97,97,303,262,266,288,288,282,282,97,303,303 +++uretprobe,PNR,335,335,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++ uselib,86,134,PNR,86,PNR,PNR,86,PNR,PNR,86,86,86,86,PNR,86,86 ++ userfaultfd,374,323,323,388,282,282,357,317,321,344,344,364,364,282,355,355 ++ usr26,PNR,PNR,PNR,983043,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++diff --git a/tests/38-basic-pfc_coverage.pfc b/tests/38-basic-pfc_coverage.pfc ++index 815470e6..02cbf726 100644 ++--- a/tests/38-basic-pfc_coverage.pfc +++++ b/tests/38-basic-pfc_coverage.pfc ++@@ -305,15 +305,15 @@ if ($arch == 3221225730) ++ # filter for syscall "open" (4294957130) [priority: 65535] ++ if ($syscall == 4294957130) ++ action KILL; ++- # filter for syscall "fstat" (4294957051) [priority: 65535] ++- if ($syscall == 4294957051) ++- action KILL_PROCESS; ++ # filter for syscall "exit_group" (94) [priority: 65535] ++ if ($syscall == 94) ++ action LOG; ++ # filter for syscall "exit" (93) [priority: 65535] ++ if ($syscall == 93) ++ action TRACE(1); +++ # filter for syscall "fstat" (80) [priority: 65535] +++ if ($syscall == 80) +++ action KILL_PROCESS; ++ # filter for syscall "close" (57) [priority: 65535] ++ if ($syscall == 57) ++ action ERRNO(1); ++diff --git a/tests/55-basic-pfc_binary_tree.pfc b/tests/55-basic-pfc_binary_tree.pfc ++index 33109454..e63aa12c 100644 ++--- a/tests/55-basic-pfc_binary_tree.pfc +++++ b/tests/55-basic-pfc_binary_tree.pfc ++@@ -178,8 +178,8 @@ if ($arch == 3221225655) ++ # filter for arch loongarch64 (3221225730) ++ if ($arch == 3221225730) ++ if ($syscall > 62) ++- if ($syscall > 214) ++- if ($syscall > 4294957051) +++ if ($syscall > 139) +++ if ($syscall > 226) ++ # filter for syscall "lstat" (4294957133) [priority: 65535] ++ if ($syscall == 4294957133) ++ action ERRNO(6); ++@@ -192,12 +192,7 @@ if ($arch == 3221225730) ++ # filter for syscall "stat" (4294957122) [priority: 65535] ++ if ($syscall == 4294957122) ++ action ERRNO(4); ++- else # ($syscall <= 4294957051) ++- # filter for syscall "fstat" (4294957051) [priority: 65533] ++- if ($syscall == 4294957051) ++- if ($a0.hi32 == 0) ++- if ($a0.lo32 == 103) ++- action ERRNO(5); +++ else # ($syscall <= 226) ++ # filter for syscall "mprotect" (226) [priority: 65533] ++ if ($syscall == 226) ++ if ($a0.hi32 == 0) ++@@ -209,11 +204,11 @@ if ($arch == 3221225730) ++ # filter for syscall "munmap" (215) [priority: 65535] ++ if ($syscall == 215) ++ action ERRNO(11); ++- else # ($syscall <= 214) ++- if ($syscall > 68) ++ # filter for syscall "brk" (214) [priority: 65535] ++ if ($syscall == 214) ++ action ERRNO(12); +++ else # ($syscall <= 139) +++ if ($syscall > 68) ++ # filter for syscall "rt_sigreturn" (139) [priority: 65535] ++ if ($syscall == 139) ++ action ERRNO(15); ++@@ -223,6 +218,11 @@ if ($arch == 3221225730) ++ # filter for syscall "rt_sigaction" (134) [priority: 65535] ++ if ($syscall == 134) ++ action ERRNO(13); +++ # filter for syscall "fstat" (80) [priority: 65533] +++ if ($syscall == 80) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 103) +++ action ERRNO(5); ++ else # ($syscall <= 68) ++ # filter for syscall "pwrite64" (68) [priority: 65531] ++ if ($syscall == 68) diff --cc debian/patches/syscalls_update_to_Linux_v6.0.patch index 0000000,0000000..d708150 new file mode 100644 --- /dev/null +++ b/debian/patches/syscalls_update_to_Linux_v6.0.patch @@@ -1,0 -1,0 +1,1007 @@@ ++From b9633de506eec837a9f91d4e98dedf5101fd5227 Mon Sep 17 00:00:00 2001 ++From: Xiaotian Wu ++Date: Sat, 6 Nov 2021 14:13:49 +0800 ++Subject: [PATCH] syscalls: update to Linux v6.0 ++ ++Signed-off-by: Xiaotian Wu ++Signed-off-by: WANG Xuerui ++Acked-by: Tom Hromatka ++Signed-off-by: Paul Moore ++--- ++ include/seccomp-syscalls.h | 1 + ++ src/syscalls.csv | 964 ++++++++++++++++++------------------- ++ 2 files changed, 483 insertions(+), 482 deletions(-) ++ ++diff --git a/include/seccomp-syscalls.h b/include/seccomp-syscalls.h ++index 845adb76..e1576d37 100644 ++--- a/include/seccomp-syscalls.h +++++ b/include/seccomp-syscalls.h ++@@ -276,6 +276,7 @@ ++ #define __PNR_riscv_flush_icache -10243 ++ #define __PNR_memfd_secret -10244 ++ #define __PNR_map_shadow_stack -10245 +++#define __PNR_fstat -10246 ++ ++ /* ++ * libseccomp syscall definitions ++diff --git a/src/syscalls.csv b/src/syscalls.csv ++index c08c27c5..aeb7c9e5 100644 ++--- a/src/syscalls.csv +++++ b/src/syscalls.csv ++@@ -1,488 +1,488 @@ ++-#syscall (v6.7.0-rc3 2023-11-30),x86,x86_64,x32,arm,aarch64,mips,mips64,mips64n32,parisc,parisc64,ppc,ppc64,riscv64,s390,s390x ++-accept,PNR,43,43,285,202,168,42,42,35,35,330,330,202,PNR,PNR ++-accept4,364,288,288,366,242,334,293,297,320,320,344,344,242,364,364 ++-access,33,21,21,33,PNR,33,20,20,33,33,33,33,PNR,33,33 ++-acct,51,163,163,51,89,51,158,158,51,51,51,51,89,51,51 ++-add_key,286,248,248,309,217,280,239,243,264,264,269,269,217,278,278 ++-adjtimex,124,159,159,124,171,124,154,154,124,124,124,124,171,124,124 ++-afs_syscall,137,183,183,PNR,PNR,137,176,176,PNR,PNR,137,137,PNR,137,137 ++-alarm,27,37,37,PNR,PNR,27,37,37,27,27,27,27,PNR,27,27 ++-arch_prctl,384,158,158,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-arm_fadvise64_64,PNR,PNR,PNR,270,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-arm_sync_file_range,PNR,PNR,PNR,341,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-bdflush,134,PNR,PNR,134,PNR,134,PNR,PNR,134,134,134,134,PNR,134,134 ++-bind,361,49,49,282,200,169,48,48,22,22,327,327,200,361,361 ++-bpf,357,321,321,386,280,355,315,319,341,341,361,361,280,351,351 ++-break,17,PNR,PNR,PNR,PNR,17,PNR,PNR,PNR,PNR,17,17,PNR,PNR,PNR ++-breakpoint,PNR,PNR,PNR,983041,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-brk,45,12,12,45,214,45,12,12,45,45,45,45,214,45,45 ++-cachectl,PNR,PNR,PNR,PNR,PNR,148,198,198,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-cacheflush,PNR,PNR,PNR,983042,PNR,147,197,197,356,356,PNR,PNR,PNR,PNR,PNR ++-cachestat,451,451,451,451,451,451,451,451,451,451,451,451,451,451,451 ++-capget,184,125,125,184,90,204,123,123,106,106,183,183,90,184,184 ++-capset,185,126,126,185,91,205,124,124,107,107,184,184,91,185,185 ++-chdir,12,80,80,12,49,12,78,78,12,12,12,12,49,12,12 ++-chmod,15,90,90,15,PNR,15,88,88,15,15,15,15,PNR,15,15 ++-chown,182,92,92,182,PNR,202,90,90,180,180,181,181,PNR,182,212 ++-chown32,212,PNR,PNR,212,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,212,PNR ++-chroot,61,161,161,61,51,61,156,156,61,61,61,61,51,61,61 ++-clock_adjtime,343,305,305,372,266,341,300,305,324,324,347,347,266,337,337 ++-clock_adjtime64,405,PNR,PNR,405,PNR,405,PNR,405,405,PNR,405,PNR,PNR,405,PNR ++-clock_getres,266,229,229,264,114,264,223,227,257,257,247,247,114,261,261 ++-clock_getres_time64,406,PNR,PNR,406,PNR,406,PNR,406,406,PNR,406,PNR,PNR,406,PNR ++-clock_gettime,265,228,228,263,113,263,222,226,256,256,246,246,113,260,260 ++-clock_gettime64,403,PNR,PNR,403,PNR,403,PNR,403,403,PNR,403,PNR,PNR,403,PNR ++-clock_nanosleep,267,230,230,265,115,265,224,228,258,258,248,248,115,262,262 ++-clock_nanosleep_time64,407,PNR,PNR,407,PNR,407,PNR,407,407,PNR,407,PNR,PNR,407,PNR ++-clock_settime,264,227,227,262,112,262,221,225,255,255,245,245,112,259,259 ++-clock_settime64,404,PNR,PNR,404,PNR,404,PNR,404,404,PNR,404,PNR,PNR,404,PNR ++-clone,120,56,56,120,220,120,55,55,120,120,120,120,220,120,120 ++-clone3,435,435,435,435,435,435,435,435,435,435,435,435,435,435,435 ++-close,6,3,3,6,57,6,3,3,6,6,6,6,57,6,6 ++-close_range,436,436,436,436,436,436,436,436,436,436,436,436,436,436,436 ++-connect,362,42,42,283,203,170,41,41,31,31,328,328,203,362,362 ++-copy_file_range,377,326,326,391,285,360,320,324,346,346,379,379,285,375,375 ++-creat,8,85,85,8,PNR,8,83,83,8,8,8,8,PNR,8,8 ++-create_module,127,174,PNR,PNR,PNR,127,167,167,PNR,PNR,127,127,PNR,127,127 ++-delete_module,129,176,176,129,106,129,169,169,129,129,129,129,106,129,129 ++-dup,41,32,32,41,23,41,31,31,41,41,41,41,23,41,41 ++-dup2,63,33,33,63,PNR,63,32,32,63,63,63,63,PNR,63,63 ++-dup3,330,292,292,358,24,327,286,290,312,312,316,316,24,326,326 ++-epoll_create,254,213,213,250,PNR,248,207,207,224,224,236,236,PNR,249,249 ++-epoll_create1,329,291,291,357,20,326,285,289,311,311,315,315,20,327,327 ++-epoll_ctl,255,233,233,251,21,249,208,208,225,225,237,237,21,250,250 ++-epoll_ctl_old,PNR,214,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-epoll_pwait,319,281,281,346,22,313,272,276,297,297,303,303,22,312,312 ++-epoll_pwait2,441,441,441,441,441,441,441,441,441,441,441,441,441,441,441 ++-epoll_wait,256,232,232,252,PNR,250,209,209,226,226,238,238,PNR,251,251 ++-epoll_wait_old,PNR,215,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-eventfd,323,284,284,351,PNR,319,278,282,304,304,307,307,PNR,318,318 ++-eventfd2,328,290,290,356,19,325,284,288,310,310,314,314,19,323,323 ++-execve,11,59,520,11,221,11,57,57,11,11,11,11,221,11,11 ++-execveat,358,322,545,387,281,356,316,320,342,342,362,362,281,354,354 ++-exit,1,60,60,1,93,1,58,58,1,1,1,1,93,1,1 ++-exit_group,252,231,231,248,94,246,205,205,222,222,234,234,94,248,248 ++-faccessat,307,269,269,334,48,300,259,263,287,287,298,298,48,300,300 ++-faccessat2,439,439,439,439,439,439,439,439,439,439,439,439,439,439,439 ++-fadvise64,250,221,221,PNR,223,254,215,216,PNR,PNR,233,233,223,253,253 ++-fadvise64_64,272,PNR,PNR,PNR,PNR,PNR,PNR,PNR,236,236,254,PNR,PNR,264,PNR ++-fallocate,324,285,285,352,47,320,279,283,305,305,309,309,47,314,314 ++-fanotify_init,338,300,300,367,262,336,295,300,322,322,323,323,262,332,332 ++-fanotify_mark,339,301,301,368,263,337,296,301,323,323,324,324,263,333,333 ++-fchdir,133,81,81,133,50,133,79,79,133,133,133,133,50,133,133 ++-fchmod,94,91,91,94,52,94,89,89,94,94,94,94,52,94,94 ++-fchmodat,306,268,268,333,53,299,258,262,286,286,297,297,53,299,299 ++-fchmodat2,452,452,452,452,452,452,452,452,452,452,452,452,452,452,452 ++-fchown,95,93,93,95,55,95,91,91,95,95,95,95,55,95,207 ++-fchown32,207,PNR,PNR,207,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,207,PNR ++-fchownat,298,260,260,325,54,291,250,254,278,278,289,289,54,291,291 ++-fcntl,55,72,72,55,25,55,70,70,55,55,55,55,25,55,55 ++-fcntl64,221,PNR,PNR,221,PNR,220,PNR,212,202,202,204,PNR,PNR,221,PNR ++-fdatasync,148,75,75,148,83,152,73,73,148,148,148,148,83,148,148 ++-fgetxattr,231,193,193,231,10,229,185,185,243,243,214,214,10,229,229 ++-finit_module,350,313,313,379,273,348,307,312,333,333,353,353,273,344,344 ++-flistxattr,234,196,196,234,13,232,188,188,246,246,217,217,13,232,232 ++-flock,143,73,73,143,32,143,71,71,143,143,143,143,32,143,143 ++-fork,2,57,57,2,PNR,2,56,56,2,2,2,2,PNR,2,2 ++-fremovexattr,237,199,199,237,16,235,191,191,249,249,220,220,16,235,235 ++-fsconfig,431,431,431,431,431,431,431,431,431,431,431,431,431,431,431 ++-fsetxattr,228,190,190,228,7,226,182,182,240,240,211,211,7,226,226 ++-fsmount,432,432,432,432,432,432,432,432,432,432,432,432,432,432,432 ++-fsopen,430,430,430,430,430,430,430,430,430,430,430,430,430,430,430 ++-fspick,433,433,433,433,433,433,433,433,433,433,433,433,433,433,433 ++-fstat,108,5,5,108,80,108,5,5,28,28,108,108,80,108,108 ++-fstat64,197,PNR,PNR,197,PNR,215,PNR,PNR,112,112,197,PNR,PNR,197,PNR ++-fstatat64,300,PNR,PNR,327,PNR,293,PNR,PNR,280,280,291,PNR,PNR,293,PNR ++-fstatfs,100,138,138,100,44,100,135,135,100,100,100,100,44,100,100 ++-fstatfs64,269,PNR,PNR,267,PNR,256,PNR,218,299,299,253,253,PNR,266,266 ++-fsync,118,74,74,118,82,118,72,72,118,118,118,118,82,118,118 ++-ftime,35,PNR,PNR,PNR,PNR,35,PNR,PNR,PNR,PNR,35,35,PNR,PNR,PNR ++-ftruncate,93,77,77,93,46,93,75,75,93,93,93,93,46,93,93 ++-ftruncate64,194,PNR,PNR,194,PNR,212,PNR,PNR,200,200,194,PNR,PNR,194,PNR ++-futex,240,202,202,240,98,238,194,194,210,210,221,221,98,238,238 ++-futex_requeue,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456 ++-futex_time64,422,PNR,PNR,422,PNR,422,PNR,422,422,PNR,422,PNR,PNR,422,PNR ++-futex_wait,455,455,455,455,455,455,455,455,455,455,455,455,455,455,455 ++-futex_waitv,449,449,449,449,449,449,449,449,449,449,449,449,449,449,449 ++-futex_wake,454,454,454,454,454,454,454,454,454,454,454,454,454,454,454 ++-futimesat,299,261,261,326,PNR,292,251,255,279,279,290,290,PNR,292,292 ++-getcpu,318,309,309,345,168,312,271,275,296,296,302,302,168,311,311 ++-getcwd,183,79,79,183,17,203,77,77,110,110,182,182,17,183,183 ++-getdents,141,78,78,141,PNR,141,76,76,141,141,141,141,PNR,141,141 ++-getdents64,220,217,217,217,61,219,308,299,201,201,202,202,61,220,220 ++-getegid,50,108,108,50,177,50,106,106,50,50,50,50,177,50,202 ++-getegid32,202,PNR,PNR,202,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,202,PNR ++-geteuid,49,107,107,49,175,49,105,105,49,49,49,49,175,49,201 ++-geteuid32,201,PNR,PNR,201,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,201,PNR ++-getgid,47,104,104,47,176,47,102,102,47,47,47,47,176,47,200 ++-getgid32,200,PNR,PNR,200,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,200,PNR ++-getgroups,80,115,115,80,158,80,113,113,80,80,80,80,158,80,205 ++-getgroups32,205,PNR,PNR,205,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,205,PNR ++-getitimer,105,36,36,105,102,105,35,35,105,105,105,105,102,105,105 ++-get_kernel_syms,130,177,PNR,PNR,PNR,130,170,170,PNR,PNR,130,130,PNR,130,130 ++-get_mempolicy,275,239,239,320,236,269,228,232,261,261,260,260,236,269,269 ++-getpeername,368,52,52,287,205,171,51,51,53,53,332,332,205,368,368 ++-getpgid,132,121,121,132,155,132,119,119,132,132,132,132,155,132,132 ++-getpgrp,65,111,111,65,PNR,65,109,109,65,65,65,65,PNR,65,65 ++-getpid,20,39,39,20,172,20,38,38,20,20,20,20,172,20,20 ++-getpmsg,188,181,181,PNR,PNR,208,174,174,PNR,PNR,187,187,PNR,188,188 ++-getppid,64,110,110,64,173,64,108,108,64,64,64,64,173,64,64 ++-getpriority,96,140,140,96,141,96,137,137,96,96,96,96,141,96,96 ++-getrandom,355,318,318,384,278,353,313,317,339,339,359,359,278,349,349 ++-getresgid,171,120,120,171,150,191,118,118,171,171,170,170,150,171,211 ++-getresgid32,211,PNR,PNR,211,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,211,PNR ++-getresuid,165,118,118,165,148,186,116,116,165,165,165,165,148,165,209 ++-getresuid32,209,PNR,PNR,209,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,209,PNR ++-getrlimit,76,97,97,PNR,163,76,95,95,76,76,76,76,163,76,191 ++-get_robust_list,312,274,531,339,100,310,269,273,290,290,299,299,100,305,305 ++-getrusage,77,98,98,77,165,77,96,96,77,77,77,77,165,77,77 ++-getsid,147,124,124,147,156,151,122,122,147,147,147,147,156,147,147 ++-getsockname,367,51,51,286,204,172,50,50,44,44,331,331,204,367,367 ++-getsockopt,365,55,542,295,209,173,54,54,182,182,340,340,209,365,365 ++-get_thread_area,244,211,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-gettid,224,186,186,224,178,222,178,178,206,206,207,207,178,236,236 ++-gettimeofday,78,96,96,78,169,78,94,94,78,78,78,78,169,78,78 ++-get_tls,PNR,PNR,PNR,983046,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-getuid,24,102,102,24,174,24,100,100,24,24,24,24,174,24,199 ++-getuid32,199,PNR,PNR,199,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,199,PNR ++-getxattr,229,191,191,229,8,227,183,183,241,241,212,212,8,227,227 ++-gtty,32,PNR,PNR,PNR,PNR,32,PNR,PNR,PNR,PNR,32,32,PNR,PNR,PNR ++-idle,112,PNR,PNR,PNR,PNR,112,PNR,PNR,PNR,PNR,112,112,PNR,112,112 ++-init_module,128,175,175,128,105,128,168,168,128,128,128,128,105,128,128 ++-inotify_add_watch,292,254,254,317,27,285,244,248,270,270,276,276,27,285,285 ++-inotify_init,291,253,253,316,PNR,284,243,247,269,269,275,275,PNR,284,284 ++-inotify_init1,332,294,294,360,26,329,288,292,314,314,318,318,26,324,324 ++-inotify_rm_watch,293,255,255,318,28,286,245,249,271,271,277,277,28,286,286 ++-io_cancel,249,210,210,247,3,245,204,204,219,219,231,231,3,247,247 ++-ioctl,54,16,514,54,29,54,15,15,54,54,54,54,29,54,54 ++-io_destroy,246,207,207,244,1,242,201,201,216,216,228,228,1,244,244 ++-io_getevents,247,208,208,245,4,243,202,202,217,217,229,229,4,245,245 ++-ioperm,101,173,173,PNR,PNR,101,PNR,PNR,PNR,PNR,101,101,PNR,101,PNR ++-io_pgetevents,385,333,333,399,292,368,328,332,350,350,388,388,292,382,382 ++-io_pgetevents_time64,416,PNR,PNR,416,PNR,416,PNR,416,416,PNR,416,PNR,PNR,416,PNR ++-iopl,110,172,172,PNR,PNR,110,PNR,PNR,PNR,PNR,110,110,PNR,PNR,PNR ++-ioprio_get,290,252,252,315,31,315,274,278,268,268,274,274,31,283,283 ++-ioprio_set,289,251,251,314,30,314,273,277,267,267,273,273,30,282,282 ++-io_setup,245,206,543,243,0,241,200,200,215,215,227,227,0,243,243 ++-io_submit,248,209,544,246,2,244,203,203,218,218,230,230,2,246,246 ++-io_uring_enter,426,426,426,426,426,426,426,426,426,426,426,426,426,426,426 ++-io_uring_register,427,427,427,427,427,427,427,427,427,427,427,427,427,427,427 ++-io_uring_setup,425,425,425,425,425,425,425,425,425,425,425,425,425,425,425 ++-ipc,117,PNR,PNR,PNR,PNR,117,PNR,PNR,PNR,PNR,117,117,PNR,117,117 ++-kcmp,349,312,312,378,272,347,306,311,332,332,354,354,272,343,343 ++-kexec_file_load,PNR,320,320,401,294,PNR,PNR,PNR,355,355,382,382,294,381,381 ++-kexec_load,283,246,528,347,104,311,270,274,300,300,268,268,104,277,277 ++-keyctl,288,250,250,311,219,282,241,245,266,266,271,271,219,280,280 ++-kill,37,62,62,37,129,37,60,60,37,37,37,37,129,37,37 ++-landlock_add_rule,445,445,445,445,445,445,445,445,445,445,445,445,445,445,445 ++-landlock_create_ruleset,444,444,444,444,444,444,444,444,444,444,444,444,444,444,444 ++-landlock_restrict_self,446,446,446,446,446,446,446,446,446,446,446,446,446,446,446 ++-lchown,16,94,94,16,PNR,16,92,92,16,16,16,16,PNR,16,198 ++-lchown32,198,PNR,PNR,198,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,198,PNR ++-lgetxattr,230,192,192,230,9,228,184,184,242,242,213,213,9,228,228 ++-link,9,86,86,9,PNR,9,84,84,9,9,9,9,PNR,9,9 ++-linkat,303,265,265,330,37,296,255,259,283,283,294,294,37,296,296 ++-listen,363,50,50,284,201,174,49,49,32,32,329,329,201,363,363 ++-listxattr,232,194,194,232,11,230,186,186,244,244,215,215,11,230,230 ++-llistxattr,233,195,195,233,12,231,187,187,245,245,216,216,12,231,231 ++-_llseek,140,PNR,PNR,140,PNR,140,PNR,PNR,140,140,140,140,PNR,140,PNR ++-lock,53,PNR,PNR,PNR,PNR,53,PNR,PNR,PNR,PNR,53,53,PNR,PNR,PNR ++-lookup_dcookie,253,212,212,249,18,247,206,206,223,223,235,235,18,110,110 ++-lremovexattr,236,198,198,236,15,234,190,190,248,248,219,219,15,234,234 ++-lseek,19,8,8,19,62,19,8,8,19,19,19,19,62,19,19 ++-lsetxattr,227,189,189,227,6,225,181,181,239,239,210,210,6,225,225 ++-lstat,107,6,6,107,PNR,107,6,6,84,84,107,107,PNR,107,107 ++-lstat64,196,PNR,PNR,196,PNR,214,PNR,PNR,198,198,196,PNR,PNR,196,PNR ++-madvise,219,28,28,220,233,218,27,27,119,119,205,205,233,219,219 ++-map_shadow_stack,453,453,PNR,453,453,453,453,453,453,453,453,453,453,453,453 ++-mbind,274,237,237,319,235,268,227,231,260,260,259,259,235,268,268 ++-membarrier,375,324,324,389,283,358,318,322,343,343,365,365,283,356,356 ++-memfd_create,356,319,319,385,279,354,314,318,340,340,360,360,279,350,350 ++-memfd_secret,447,447,447,PNR,447,PNR,PNR,PNR,PNR,PNR,PNR,PNR,447,447,447 ++-migrate_pages,294,256,256,400,238,287,246,250,272,272,258,258,238,287,287 ++-mincore,218,27,27,219,232,217,26,26,72,72,206,206,232,218,218 ++-mkdir,39,83,83,39,PNR,39,81,81,39,39,39,39,PNR,39,39 ++-mkdirat,296,258,258,323,34,289,248,252,276,276,287,287,34,289,289 ++-mknod,14,133,133,14,PNR,14,131,131,14,14,14,14,PNR,14,14 ++-mknodat,297,259,259,324,33,290,249,253,277,277,288,288,33,290,290 ++-mlock,150,149,149,150,228,154,146,146,150,150,150,150,228,150,150 ++-mlock2,376,325,325,390,284,359,319,323,345,345,378,378,284,374,374 ++-mlockall,152,151,151,152,230,156,148,148,152,152,152,152,230,152,152 ++-mmap,90,9,9,PNR,222,90,9,9,90,90,90,90,222,90,90 ++-mmap2,192,PNR,PNR,192,PNR,210,PNR,PNR,89,89,192,PNR,PNR,192,PNR ++-modify_ldt,123,154,154,PNR,PNR,123,PNR,PNR,PNR,PNR,123,123,PNR,PNR,PNR ++-mount,21,165,165,21,40,21,160,160,21,21,21,21,40,21,21 ++-mount_setattr,442,442,442,442,442,442,442,442,442,442,442,442,442,442,442 ++-move_mount,429,429,429,429,429,429,429,429,429,429,429,429,429,429,429 ++-move_pages,317,279,533,344,239,308,267,271,295,295,301,301,239,310,310 ++-mprotect,125,10,10,125,226,125,10,10,125,125,125,125,226,125,125 ++-mpx,56,PNR,PNR,PNR,PNR,56,PNR,PNR,PNR,PNR,56,56,PNR,PNR,PNR ++-mq_getsetattr,282,245,245,279,185,276,235,239,234,234,267,267,185,276,276 ++-mq_notify,281,244,527,278,184,275,234,238,233,233,266,266,184,275,275 ++-mq_open,277,240,240,274,180,271,230,234,229,229,262,262,180,271,271 ++-mq_timedreceive,280,243,243,277,183,274,233,237,232,232,265,265,183,274,274 ++-mq_timedreceive_time64,419,PNR,PNR,419,PNR,419,PNR,419,419,PNR,419,PNR,PNR,419,PNR ++-mq_timedsend,279,242,242,276,182,273,232,236,231,231,264,264,182,273,273 ++-mq_timedsend_time64,418,PNR,PNR,418,PNR,418,PNR,418,418,PNR,418,PNR,PNR,418,PNR ++-mq_unlink,278,241,241,275,181,272,231,235,230,230,263,263,181,272,272 ++-mremap,163,25,25,163,216,167,24,24,163,163,163,163,216,163,163 ++-msgctl,402,71,71,304,187,402,69,69,191,191,402,402,187,402,402 ++-msgget,399,68,68,303,186,399,66,66,190,190,399,399,186,399,399 ++-msgrcv,401,70,70,302,188,401,68,68,189,189,401,401,188,401,401 ++-msgsnd,400,69,69,301,189,400,67,67,188,188,400,400,189,400,400 ++-msync,144,26,26,144,227,144,25,25,144,144,144,144,227,144,144 ++-multiplexer,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,201,201,PNR,PNR,PNR ++-munlock,151,150,150,151,229,155,147,147,151,151,151,151,229,151,151 ++-munlockall,153,152,152,153,231,157,149,149,153,153,153,153,231,153,153 ++-munmap,91,11,11,91,215,91,11,11,91,91,91,91,215,91,91 ++-name_to_handle_at,341,303,303,370,264,339,298,303,325,325,345,345,264,335,335 ++-nanosleep,162,35,35,162,101,166,34,34,162,162,162,162,101,162,162 ++-newfstatat,PNR,262,262,PNR,79,PNR,252,256,PNR,PNR,PNR,291,79,PNR,293 ++-_newselect,142,PNR,PNR,142,PNR,142,22,22,142,142,142,142,PNR,142,PNR ++-nfsservctl,169,180,PNR,169,42,189,173,173,PNR,PNR,168,168,42,169,169 ++-nice,34,PNR,PNR,34,PNR,34,PNR,PNR,34,34,34,34,PNR,34,34 ++-oldfstat,28,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,28,28,PNR,PNR,PNR ++-oldlstat,84,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,84,84,PNR,PNR,PNR ++-oldolduname,59,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,59,59,PNR,PNR,PNR ++-oldstat,18,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,18,18,PNR,PNR,PNR ++-olduname,109,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,109,109,PNR,PNR,PNR ++-open,5,2,2,5,PNR,5,2,2,5,5,5,5,PNR,5,5 ++-openat,295,257,257,322,56,288,247,251,275,275,286,286,56,288,288 ++-openat2,437,437,437,437,437,437,437,437,437,437,437,437,437,437,437 ++-open_by_handle_at,342,304,304,371,265,340,299,304,326,326,346,346,265,336,336 ++-open_tree,428,428,428,428,428,428,428,428,428,428,428,428,428,428,428 ++-pause,29,34,34,29,PNR,29,33,33,29,29,29,29,PNR,29,29 ++-pciconfig_iobase,PNR,PNR,PNR,271,PNR,PNR,PNR,PNR,PNR,PNR,200,200,PNR,PNR,PNR ++-pciconfig_read,PNR,PNR,PNR,272,PNR,PNR,PNR,PNR,PNR,PNR,198,198,PNR,PNR,PNR ++-pciconfig_write,PNR,PNR,PNR,273,PNR,PNR,PNR,PNR,PNR,PNR,199,199,PNR,PNR,PNR ++-perf_event_open,336,298,298,364,241,333,292,296,318,318,319,319,241,331,331 ++-personality,136,135,135,136,92,136,132,132,136,136,136,136,92,136,136 ++-pidfd_getfd,438,438,438,438,438,438,438,438,438,438,438,438,438,438,438 ++-pidfd_open,434,434,434,434,434,434,434,434,434,434,434,434,434,434,434 ++-pidfd_send_signal,424,424,424,424,424,424,424,424,424,424,424,424,424,424,424 ++-pipe,42,22,22,42,PNR,42,21,21,42,42,42,42,PNR,42,42 ++-pipe2,331,293,293,359,59,328,287,291,313,313,317,317,59,325,325 ++-pivot_root,217,155,155,218,41,216,151,151,67,67,203,203,41,217,217 ++-pkey_alloc,381,330,330,395,289,364,324,328,352,352,384,384,289,385,385 ++-pkey_free,382,331,331,396,290,365,325,329,353,353,385,385,290,386,386 ++-pkey_mprotect,380,329,329,394,288,363,323,327,351,351,386,386,288,384,384 ++-poll,168,7,7,168,PNR,188,7,7,168,168,167,167,PNR,168,168 ++-ppoll,309,271,271,336,73,302,261,265,274,274,281,281,73,302,302 ++-ppoll_time64,414,PNR,PNR,414,PNR,414,PNR,414,414,PNR,414,PNR,PNR,414,PNR ++-prctl,172,157,157,172,167,192,153,153,172,172,171,171,167,172,172 ++-pread64,180,17,17,180,67,200,16,16,108,108,179,179,67,180,180 ++-preadv,333,295,534,361,69,330,289,293,315,315,320,320,69,328,328 ++-preadv2,378,327,546,392,286,361,321,325,347,347,380,380,286,376,376 ++-prlimit64,340,302,302,369,261,338,297,302,321,321,325,325,261,334,334 ++-process_madvise,440,440,440,440,440,440,440,440,440,440,440,440,440,440,440 ++-process_mrelease,448,448,448,448,448,448,448,448,448,448,448,448,448,448,448 ++-process_vm_readv,347,310,539,376,270,345,304,309,330,330,351,351,270,340,340 ++-process_vm_writev,348,311,540,377,271,346,305,310,331,331,352,352,271,341,341 ++-prof,44,PNR,PNR,PNR,PNR,44,PNR,PNR,PNR,PNR,44,44,PNR,PNR,PNR ++-profil,98,PNR,PNR,PNR,PNR,98,PNR,PNR,PNR,PNR,98,98,PNR,PNR,PNR ++-pselect6,308,270,270,335,72,301,260,264,273,273,280,280,72,301,301 ++-pselect6_time64,413,PNR,PNR,413,PNR,413,PNR,413,413,PNR,413,PNR,PNR,413,PNR ++-ptrace,26,101,521,26,117,26,99,99,26,26,26,26,117,26,26 ++-putpmsg,189,182,182,PNR,PNR,209,175,175,PNR,PNR,188,188,PNR,189,189 ++-pwrite64,181,18,18,181,68,201,17,17,109,109,180,180,68,181,181 ++-pwritev,334,296,535,362,70,331,290,294,316,316,321,321,70,329,329 ++-pwritev2,379,328,547,393,287,362,322,326,348,348,381,381,287,377,377 ++-query_module,167,178,PNR,PNR,PNR,187,171,171,PNR,PNR,166,166,PNR,167,167 ++-quotactl,131,179,179,131,60,131,172,172,131,131,131,131,60,131,131 ++-quotactl_fd,443,443,443,443,443,443,443,443,443,443,443,443,443,443,443 ++-read,3,0,0,3,63,3,0,0,3,3,3,3,63,3,3 ++-readahead,225,187,187,225,213,223,179,179,207,207,191,191,213,222,222 ++-readdir,89,PNR,PNR,PNR,PNR,89,PNR,PNR,PNR,PNR,89,89,PNR,89,89 ++-readlink,85,89,89,85,PNR,85,87,87,85,85,85,85,PNR,85,85 ++-readlinkat,305,267,267,332,78,298,257,261,285,285,296,296,78,298,298 ++-readv,145,19,515,145,65,145,18,18,145,145,145,145,65,145,145 ++-reboot,88,169,169,88,142,88,164,164,88,88,88,88,142,88,88 ++-recv,PNR,PNR,PNR,291,PNR,175,PNR,PNR,98,98,336,336,PNR,PNR,PNR ++-recvfrom,371,45,517,292,207,176,44,44,123,123,337,337,207,371,371 ++-recvmmsg,337,299,537,365,243,335,294,298,319,319,343,343,243,357,357 ++-recvmmsg_time64,417,PNR,PNR,417,PNR,417,PNR,417,417,PNR,417,PNR,PNR,417,PNR ++-recvmsg,372,47,519,297,212,177,46,46,184,184,342,342,212,372,372 ++-remap_file_pages,257,216,216,253,234,251,210,210,227,227,239,239,234,267,267 ++-removexattr,235,197,197,235,14,233,189,189,247,247,218,218,14,233,233 ++-rename,38,82,82,38,PNR,38,80,80,38,38,38,38,PNR,38,38 ++-renameat,302,264,264,329,38,295,254,258,282,282,293,293,PNR,295,295 ++-renameat2,353,316,316,382,276,351,311,315,337,337,357,357,276,347,347 ++-request_key,287,249,249,310,218,281,240,244,265,265,270,270,218,279,279 ++-restart_syscall,0,219,219,0,128,253,213,214,0,0,0,0,128,7,7 ++-riscv_flush_icache,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,259,PNR,PNR ++-rmdir,40,84,84,40,PNR,40,82,82,40,40,40,40,PNR,40,40 ++-rseq,386,334,334,398,293,367,327,331,354,354,387,387,293,383,383 ++-rtas,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,255,255,PNR,PNR,PNR ++-rt_sigaction,174,13,512,174,134,194,13,13,174,174,173,173,134,174,174 ++-rt_sigpending,176,127,522,176,136,196,125,125,176,176,175,175,136,176,176 ++-rt_sigprocmask,175,14,14,175,135,195,14,14,175,175,174,174,135,175,175 ++-rt_sigqueueinfo,178,129,524,178,138,198,127,127,178,178,177,177,138,178,178 ++-rt_sigreturn,173,15,513,173,139,193,211,211,173,173,172,172,139,173,173 ++-rt_sigsuspend,179,130,130,179,133,199,128,128,179,179,178,178,133,179,179 ++-rt_sigtimedwait,177,128,523,177,137,197,126,126,177,177,176,176,137,177,177 ++-rt_sigtimedwait_time64,421,PNR,PNR,421,PNR,421,PNR,421,421,PNR,421,PNR,PNR,421,PNR ++-rt_tgsigqueueinfo,335,297,536,363,240,332,291,295,317,317,322,322,240,330,330 ++-s390_guarded_storage,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,378,378 ++-s390_pci_mmio_read,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,353,353 ++-s390_pci_mmio_write,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,352,352 ++-s390_runtime_instr,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,342,342 ++-s390_sthyi,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,380,380 ++-sched_getaffinity,242,204,204,242,123,240,196,196,212,212,223,223,123,240,240 ++-sched_getattr,352,315,315,381,275,350,310,314,335,335,356,356,275,346,346 ++-sched_getparam,155,143,143,155,121,159,140,140,155,155,155,155,121,155,155 ++-sched_get_priority_max,159,146,146,159,125,163,143,143,159,159,159,159,125,159,159 ++-sched_get_priority_min,160,147,147,160,126,164,144,144,160,160,160,160,126,160,160 ++-sched_getscheduler,157,145,145,157,120,161,142,142,157,157,157,157,120,157,157 ++-sched_rr_get_interval,161,148,148,161,127,165,145,145,161,161,161,161,127,161,161 ++-sched_rr_get_interval_time64,423,PNR,PNR,423,PNR,423,PNR,423,423,PNR,423,PNR,PNR,423,PNR ++-sched_setaffinity,241,203,203,241,122,239,195,195,211,211,222,222,122,239,239 ++-sched_setattr,351,314,314,380,274,349,309,313,334,334,355,355,274,345,345 ++-sched_setparam,154,142,142,154,118,158,139,139,154,154,154,154,118,154,154 ++-sched_setscheduler,156,144,144,156,119,160,141,141,156,156,156,156,119,156,156 ++-sched_yield,158,24,24,158,124,162,23,23,158,158,158,158,124,158,158 ++-seccomp,354,317,317,383,277,352,312,316,338,338,358,358,277,348,348 ++-security,PNR,185,185,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-select,82,23,23,PNR,PNR,PNR,PNR,PNR,PNR,PNR,82,82,PNR,PNR,142 ++-semctl,394,66,66,300,191,394,64,64,187,187,394,394,191,394,394 ++-semget,393,64,64,299,190,393,62,62,186,186,393,393,190,393,393 ++-semop,PNR,65,65,298,193,PNR,63,63,185,185,PNR,PNR,193,PNR,PNR ++-semtimedop,PNR,220,220,312,192,PNR,214,215,228,228,PNR,392,192,PNR,392 ++-semtimedop_time64,420,PNR,PNR,420,PNR,420,PNR,420,420,PNR,420,PNR,PNR,420,PNR ++-send,PNR,PNR,PNR,289,PNR,178,PNR,PNR,58,58,334,334,PNR,PNR,PNR ++-sendfile,187,40,40,187,71,207,39,39,122,122,186,186,71,187,187 ++-sendfile64,239,PNR,PNR,239,PNR,237,PNR,219,209,209,226,PNR,PNR,223,PNR ++-sendmmsg,345,307,538,374,269,343,302,307,329,329,349,349,269,358,358 ++-sendmsg,370,46,518,296,211,179,45,45,183,183,341,341,211,370,370 ++-sendto,369,44,44,290,206,180,43,43,82,82,335,335,206,369,369 ++-setdomainname,121,171,171,121,162,121,166,166,121,121,121,121,162,121,121 ++-setfsgid,139,123,123,139,152,139,121,121,139,139,139,139,152,139,216 ++-setfsgid32,216,PNR,PNR,216,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,216,PNR ++-setfsuid,138,122,122,138,151,138,120,120,138,138,138,138,151,138,215 ++-setfsuid32,215,PNR,PNR,215,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,215,PNR ++-setgid,46,106,106,46,144,46,104,104,46,46,46,46,144,46,214 ++-setgid32,214,PNR,PNR,214,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,214,PNR ++-setgroups,81,116,116,81,159,81,114,114,81,81,81,81,159,81,206 ++-setgroups32,206,PNR,PNR,206,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,206,PNR ++-sethostname,74,170,170,74,161,74,165,165,74,74,74,74,161,74,74 ++-setitimer,104,38,38,104,103,104,36,36,104,104,104,104,103,104,104 ++-set_mempolicy,276,238,238,321,237,270,229,233,262,262,261,261,237,270,270 ++-set_mempolicy_home_node,450,450,450,450,450,450,450,450,450,450,450,450,450,450,450 ++-setns,346,308,308,375,268,344,303,308,328,328,350,350,268,339,339 ++-setpgid,57,109,109,57,154,57,107,107,57,57,57,57,154,57,57 ++-setpriority,97,141,141,97,140,97,138,138,97,97,97,97,140,97,97 ++-setregid,71,114,114,71,143,71,112,112,71,71,71,71,143,71,204 ++-setregid32,204,PNR,PNR,204,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,204,PNR ++-setresgid,170,119,119,170,149,190,117,117,170,170,169,169,149,170,210 ++-setresgid32,210,PNR,PNR,210,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,210,PNR ++-setresuid,164,117,117,164,147,185,115,115,164,164,164,164,147,164,208 ++-setresuid32,208,PNR,PNR,208,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,208,PNR ++-setreuid,70,113,113,70,145,70,111,111,70,70,70,70,145,70,203 ++-setreuid32,203,PNR,PNR,203,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,203,PNR ++-setrlimit,75,160,160,75,164,75,155,155,75,75,75,75,164,75,75 ++-set_robust_list,311,273,530,338,99,309,268,272,289,289,300,300,99,304,304 ++-setsid,66,112,112,66,157,66,110,110,66,66,66,66,157,66,66 ++-setsockopt,366,54,541,294,208,181,53,53,181,181,339,339,208,366,366 ++-set_thread_area,243,205,PNR,PNR,PNR,283,242,246,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-set_tid_address,258,218,218,256,96,252,212,213,237,237,232,232,96,252,252 ++-settimeofday,79,164,164,79,170,79,159,159,79,79,79,79,170,79,79 ++-set_tls,PNR,PNR,PNR,983045,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-setuid,23,105,105,23,146,23,103,103,23,23,23,23,146,23,213 ++-setuid32,213,PNR,PNR,213,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,213,PNR ++-setxattr,226,188,188,226,5,224,180,180,238,238,209,209,5,224,224 ++-sgetmask,68,PNR,PNR,PNR,PNR,68,PNR,PNR,68,68,68,68,PNR,PNR,PNR ++-shmat,397,30,30,305,196,397,29,29,192,192,397,397,196,397,397 ++-shmctl,396,31,31,308,195,396,30,30,195,195,396,396,195,396,396 ++-shmdt,398,67,67,306,197,398,65,65,193,193,398,398,197,398,398 ++-shmget,395,29,29,307,194,395,28,28,194,194,395,395,194,395,395 ++-shutdown,373,48,48,293,210,182,47,47,117,117,338,338,210,373,373 ++-sigaction,67,PNR,PNR,67,PNR,67,PNR,PNR,PNR,PNR,67,67,PNR,67,67 ++-sigaltstack,186,131,525,186,132,206,129,129,166,166,185,185,132,186,186 ++-signal,48,PNR,PNR,PNR,PNR,48,PNR,PNR,48,48,48,48,PNR,48,48 ++-signalfd,321,282,282,349,PNR,317,276,280,302,302,305,305,PNR,316,316 ++-signalfd4,327,289,289,355,74,324,283,287,309,309,313,313,74,322,322 ++-sigpending,73,PNR,PNR,73,PNR,73,PNR,PNR,73,73,73,73,PNR,73,73 ++-sigprocmask,126,PNR,PNR,126,PNR,126,PNR,PNR,126,126,126,126,PNR,126,126 ++-sigreturn,119,PNR,PNR,119,PNR,119,PNR,PNR,PNR,PNR,119,119,PNR,119,119 ++-sigsuspend,72,PNR,PNR,72,PNR,72,PNR,PNR,PNR,PNR,72,72,PNR,72,72 ++-socket,359,41,41,281,198,183,40,40,17,17,326,326,198,359,359 ++-socketcall,102,PNR,PNR,PNR,PNR,102,PNR,PNR,PNR,PNR,102,102,PNR,102,102 ++-socketpair,360,53,53,288,199,184,52,52,56,56,333,333,199,360,360 ++-splice,313,275,275,340,76,304,263,267,291,291,283,283,76,306,306 ++-spu_create,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,279,279,PNR,PNR,PNR ++-spu_run,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,278,278,PNR,PNR,PNR ++-ssetmask,69,PNR,PNR,PNR,PNR,69,PNR,PNR,69,69,69,69,PNR,PNR,PNR ++-stat,106,4,4,106,PNR,106,4,4,18,18,106,106,PNR,106,106 ++-stat64,195,PNR,PNR,195,PNR,213,PNR,PNR,101,101,195,PNR,PNR,195,PNR ++-statfs,99,137,137,99,43,99,134,134,99,99,99,99,43,99,99 ++-statfs64,268,PNR,PNR,266,PNR,255,PNR,217,298,298,252,252,PNR,265,265 ++-statx,383,332,332,397,291,366,326,330,349,349,383,383,291,379,379 ++-stime,25,PNR,PNR,PNR,PNR,25,PNR,PNR,25,25,25,25,PNR,25,PNR ++-stty,31,PNR,PNR,PNR,PNR,31,PNR,PNR,PNR,PNR,31,31,PNR,PNR,PNR ++-subpage_prot,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,310,310,PNR,PNR,PNR ++-swapcontext,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,249,249,PNR,PNR,PNR ++-swapoff,115,168,168,115,225,115,163,163,115,115,115,115,225,115,115 ++-swapon,87,167,167,87,224,87,162,162,87,87,87,87,224,87,87 ++-switch_endian,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,363,363,PNR,PNR,PNR ++-symlink,83,88,88,83,PNR,83,86,86,83,83,83,83,PNR,83,83 ++-symlinkat,304,266,266,331,36,297,256,260,284,284,295,295,36,297,297 ++-sync,36,162,162,36,81,36,157,157,36,36,36,36,81,36,36 ++-sync_file_range,314,277,277,PNR,84,305,264,268,292,292,PNR,PNR,84,307,307 ++-sync_file_range2,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,308,308,PNR,PNR,PNR ++-syncfs,344,306,306,373,267,342,301,306,327,327,348,348,267,338,338 ++-syscall,PNR,PNR,PNR,PNR,PNR,0,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-_sysctl,149,156,PNR,149,PNR,153,152,152,149,149,149,149,PNR,149,149 ++-sys_debug_setcontext,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,256,256,PNR,PNR,PNR ++-sysfs,135,139,139,135,PNR,135,136,136,135,135,135,135,PNR,135,135 ++-sysinfo,116,99,99,116,179,116,97,97,116,116,116,116,179,116,116 ++-syslog,103,103,103,103,116,103,101,101,103,103,103,103,116,103,103 ++-sysmips,PNR,PNR,PNR,PNR,PNR,149,199,199,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-tee,315,276,276,342,77,306,265,269,293,293,284,284,77,308,308 ++-tgkill,270,234,234,268,131,266,225,229,259,259,250,250,131,241,241 ++-time,13,201,201,PNR,PNR,13,PNR,PNR,13,13,13,13,PNR,13,PNR ++-timer_create,259,222,526,257,107,257,216,220,250,250,240,240,107,254,254 ++-timer_delete,263,226,226,261,111,261,220,224,254,254,244,244,111,258,258 ++-timerfd,PNR,PNR,PNR,PNR,PNR,318,277,281,PNR,PNR,PNR,PNR,PNR,317,317 ++-timerfd_create,322,283,283,350,85,321,280,284,306,306,306,306,85,319,319 ++-timerfd_gettime,326,287,287,354,87,322,281,285,308,308,312,312,87,321,321 ++-timerfd_gettime64,410,PNR,PNR,410,PNR,410,PNR,410,410,PNR,410,PNR,PNR,410,PNR ++-timerfd_settime,325,286,286,353,86,323,282,286,307,307,311,311,86,320,320 ++-timerfd_settime64,411,PNR,PNR,411,PNR,411,PNR,411,411,PNR,411,PNR,PNR,411,PNR ++-timer_getoverrun,262,225,225,260,109,260,219,223,253,253,243,243,109,257,257 ++-timer_gettime,261,224,224,259,108,259,218,222,252,252,242,242,108,256,256 ++-timer_gettime64,408,PNR,PNR,408,PNR,408,PNR,408,408,PNR,408,PNR,PNR,408,PNR ++-timer_settime,260,223,223,258,110,258,217,221,251,251,241,241,110,255,255 ++-timer_settime64,409,PNR,PNR,409,PNR,409,PNR,409,409,PNR,409,PNR,PNR,409,PNR ++-times,43,100,100,43,153,43,98,98,43,43,43,43,153,43,43 ++-tkill,238,200,200,238,130,236,192,192,208,208,208,208,130,237,237 ++-truncate,92,76,76,92,45,92,74,74,92,92,92,92,45,92,92 ++-truncate64,193,PNR,PNR,193,PNR,211,PNR,PNR,199,199,193,PNR,PNR,193,PNR ++-tuxcall,PNR,184,184,PNR,PNR,PNR,PNR,PNR,PNR,PNR,225,225,PNR,PNR,PNR ++-ugetrlimit,191,PNR,PNR,191,PNR,PNR,PNR,PNR,PNR,PNR,190,190,PNR,191,PNR ++-ulimit,58,PNR,PNR,PNR,PNR,58,PNR,PNR,PNR,PNR,58,58,PNR,PNR,PNR ++-umask,60,95,95,60,166,60,93,93,60,60,60,60,166,60,60 ++-umount,22,PNR,PNR,PNR,PNR,22,PNR,PNR,PNR,PNR,22,22,PNR,22,22 ++-umount2,52,166,166,52,39,52,161,161,52,52,52,52,39,52,52 ++-uname,122,63,63,122,160,122,61,61,59,59,122,122,160,122,122 ++-unlink,10,87,87,10,PNR,10,85,85,10,10,10,10,PNR,10,10 ++-unlinkat,301,263,263,328,35,294,253,257,281,281,292,292,35,294,294 ++-unshare,310,272,272,337,97,303,262,266,288,288,282,282,97,303,303 ++-uselib,86,134,PNR,86,PNR,86,PNR,PNR,86,86,86,86,PNR,86,86 ++-userfaultfd,374,323,323,388,282,357,317,321,344,344,364,364,282,355,355 ++-usr26,PNR,PNR,PNR,983043,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-usr32,PNR,PNR,PNR,983044,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-ustat,62,136,136,62,PNR,62,133,133,62,62,62,62,PNR,62,62 ++-utime,30,132,132,PNR,PNR,30,130,130,30,30,30,30,PNR,30,30 ++-utimensat,320,280,280,348,88,316,275,279,301,301,304,304,88,315,315 ++-utimensat_time64,412,PNR,PNR,412,PNR,412,PNR,412,412,PNR,412,PNR,PNR,412,PNR ++-utimes,271,235,235,269,PNR,267,226,230,336,336,251,251,PNR,313,313 ++-vfork,190,58,58,190,PNR,PNR,PNR,PNR,113,113,189,189,PNR,190,190 ++-vhangup,111,153,153,111,58,111,150,150,111,111,111,111,58,111,111 ++-vm86,166,PNR,PNR,PNR,PNR,113,PNR,PNR,PNR,PNR,113,113,PNR,PNR,PNR ++-vm86old,113,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-vmsplice,316,278,532,343,75,307,266,270,294,294,285,285,75,309,309 ++-vserver,273,236,PNR,313,PNR,277,236,240,PNR,PNR,PNR,PNR,PNR,PNR,PNR ++-wait4,114,61,61,114,260,114,59,59,114,114,114,114,260,114,114 ++-waitid,284,247,529,280,95,278,237,241,235,235,272,272,95,281,281 ++-waitpid,7,PNR,PNR,PNR,PNR,7,PNR,PNR,7,7,7,7,PNR,PNR,PNR ++-write,4,1,1,4,64,4,1,1,4,4,4,4,64,4,4 ++-writev,146,20,516,146,66,146,19,19,146,146,146,146,66,146,146 +++#syscall (v6.7.0 2024-02-05),x86,x86_64,x32,arm,aarch64,loongarch64,mips,mips64,mips64n32,parisc,parisc64,ppc,ppc64,riscv64,s390,s390x +++accept,PNR,43,43,285,202,202,168,42,42,35,35,330,330,202,PNR,PNR +++accept4,364,288,288,366,242,242,334,293,297,320,320,344,344,242,364,364 +++access,33,21,21,33,PNR,PNR,33,20,20,33,33,33,33,PNR,33,33 +++acct,51,163,163,51,89,89,51,158,158,51,51,51,51,89,51,51 +++add_key,286,248,248,309,217,217,280,239,243,264,264,269,269,217,278,278 +++adjtimex,124,159,159,124,171,171,124,154,154,124,124,124,124,171,124,124 +++afs_syscall,137,183,183,PNR,PNR,PNR,137,176,176,PNR,PNR,137,137,PNR,137,137 +++alarm,27,37,37,PNR,PNR,PNR,27,37,37,27,27,27,27,PNR,27,27 +++arch_prctl,384,158,158,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++arm_fadvise64_64,PNR,PNR,PNR,270,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++arm_sync_file_range,PNR,PNR,PNR,341,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++bdflush,134,PNR,PNR,134,PNR,PNR,134,PNR,PNR,134,134,134,134,PNR,134,134 +++bind,361,49,49,282,200,200,169,48,48,22,22,327,327,200,361,361 +++bpf,357,321,321,386,280,280,355,315,319,341,341,361,361,280,351,351 +++break,17,PNR,PNR,PNR,PNR,PNR,17,PNR,PNR,PNR,PNR,17,17,PNR,PNR,PNR +++breakpoint,PNR,PNR,PNR,983041,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++brk,45,12,12,45,214,214,45,12,12,45,45,45,45,214,45,45 +++cachectl,PNR,PNR,PNR,PNR,PNR,PNR,148,198,198,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++cacheflush,PNR,PNR,PNR,983042,PNR,PNR,147,197,197,356,356,PNR,PNR,PNR,PNR,PNR +++cachestat,451,451,451,451,451,451,451,451,451,451,451,451,451,451,451,451 +++capget,184,125,125,184,90,90,204,123,123,106,106,183,183,90,184,184 +++capset,185,126,126,185,91,91,205,124,124,107,107,184,184,91,185,185 +++chdir,12,80,80,12,49,49,12,78,78,12,12,12,12,49,12,12 +++chmod,15,90,90,15,PNR,PNR,15,88,88,15,15,15,15,PNR,15,15 +++chown,182,92,92,182,PNR,PNR,202,90,90,180,180,181,181,PNR,182,212 +++chown32,212,PNR,PNR,212,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,212,PNR +++chroot,61,161,161,61,51,51,61,156,156,61,61,61,61,51,61,61 +++clock_adjtime,343,305,305,372,266,266,341,300,305,324,324,347,347,266,337,337 +++clock_adjtime64,405,PNR,PNR,405,PNR,PNR,405,PNR,405,405,PNR,405,PNR,PNR,405,PNR +++clock_getres,266,229,229,264,114,114,264,223,227,257,257,247,247,114,261,261 +++clock_getres_time64,406,PNR,PNR,406,PNR,PNR,406,PNR,406,406,PNR,406,PNR,PNR,406,PNR +++clock_gettime,265,228,228,263,113,113,263,222,226,256,256,246,246,113,260,260 +++clock_gettime64,403,PNR,PNR,403,PNR,PNR,403,PNR,403,403,PNR,403,PNR,PNR,403,PNR +++clock_nanosleep,267,230,230,265,115,115,265,224,228,258,258,248,248,115,262,262 +++clock_nanosleep_time64,407,PNR,PNR,407,PNR,PNR,407,PNR,407,407,PNR,407,PNR,PNR,407,PNR +++clock_settime,264,227,227,262,112,112,262,221,225,255,255,245,245,112,259,259 +++clock_settime64,404,PNR,PNR,404,PNR,PNR,404,PNR,404,404,PNR,404,PNR,PNR,404,PNR +++clone,120,56,56,120,220,220,120,55,55,120,120,120,120,220,120,120 +++clone3,435,435,435,435,435,435,435,435,435,435,435,435,435,435,435,435 +++close,6,3,3,6,57,57,6,3,3,6,6,6,6,57,6,6 +++close_range,436,436,436,436,436,436,436,436,436,436,436,436,436,436,436,436 +++connect,362,42,42,283,203,203,170,41,41,31,31,328,328,203,362,362 +++copy_file_range,377,326,326,391,285,285,360,320,324,346,346,379,379,285,375,375 +++creat,8,85,85,8,PNR,PNR,8,83,83,8,8,8,8,PNR,8,8 +++create_module,127,174,PNR,PNR,PNR,PNR,127,167,167,PNR,PNR,127,127,PNR,127,127 +++delete_module,129,176,176,129,106,106,129,169,169,129,129,129,129,106,129,129 +++dup,41,32,32,41,23,23,41,31,31,41,41,41,41,23,41,41 +++dup2,63,33,33,63,PNR,PNR,63,32,32,63,63,63,63,PNR,63,63 +++dup3,330,292,292,358,24,24,327,286,290,312,312,316,316,24,326,326 +++epoll_create,254,213,213,250,PNR,PNR,248,207,207,224,224,236,236,PNR,249,249 +++epoll_create1,329,291,291,357,20,20,326,285,289,311,311,315,315,20,327,327 +++epoll_ctl,255,233,233,251,21,21,249,208,208,225,225,237,237,21,250,250 +++epoll_ctl_old,PNR,214,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++epoll_pwait,319,281,281,346,22,22,313,272,276,297,297,303,303,22,312,312 +++epoll_pwait2,441,441,441,441,441,441,441,441,441,441,441,441,441,441,441,441 +++epoll_wait,256,232,232,252,PNR,PNR,250,209,209,226,226,238,238,PNR,251,251 +++epoll_wait_old,PNR,215,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++eventfd,323,284,284,351,PNR,PNR,319,278,282,304,304,307,307,PNR,318,318 +++eventfd2,328,290,290,356,19,19,325,284,288,310,310,314,314,19,323,323 +++execve,11,59,520,11,221,221,11,57,57,11,11,11,11,221,11,11 +++execveat,358,322,545,387,281,281,356,316,320,342,342,362,362,281,354,354 +++exit,1,60,60,1,93,93,1,58,58,1,1,1,1,93,1,1 +++exit_group,252,231,231,248,94,94,246,205,205,222,222,234,234,94,248,248 +++faccessat,307,269,269,334,48,48,300,259,263,287,287,298,298,48,300,300 +++faccessat2,439,439,439,439,439,439,439,439,439,439,439,439,439,439,439,439 +++fadvise64,250,221,221,PNR,223,223,254,215,216,PNR,PNR,233,233,223,253,253 +++fadvise64_64,272,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,236,236,254,PNR,PNR,264,PNR +++fallocate,324,285,285,352,47,47,320,279,283,305,305,309,309,47,314,314 +++fanotify_init,338,300,300,367,262,262,336,295,300,322,322,323,323,262,332,332 +++fanotify_mark,339,301,301,368,263,263,337,296,301,323,323,324,324,263,333,333 +++fchdir,133,81,81,133,50,50,133,79,79,133,133,133,133,50,133,133 +++fchmod,94,91,91,94,52,52,94,89,89,94,94,94,94,52,94,94 +++fchmodat,306,268,268,333,53,53,299,258,262,286,286,297,297,53,299,299 +++fchmodat2,452,452,452,452,452,452,452,452,452,452,452,452,452,452,452,452 +++fchown,95,93,93,95,55,55,95,91,91,95,95,95,95,55,95,207 +++fchown32,207,PNR,PNR,207,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,207,PNR +++fchownat,298,260,260,325,54,54,291,250,254,278,278,289,289,54,291,291 +++fcntl,55,72,72,55,25,25,55,70,70,55,55,55,55,25,55,55 +++fcntl64,221,PNR,PNR,221,PNR,PNR,220,PNR,212,202,202,204,PNR,PNR,221,PNR +++fdatasync,148,75,75,148,83,83,152,73,73,148,148,148,148,83,148,148 +++fgetxattr,231,193,193,231,10,10,229,185,185,243,243,214,214,10,229,229 +++finit_module,350,313,313,379,273,273,348,307,312,333,333,353,353,273,344,344 +++flistxattr,234,196,196,234,13,13,232,188,188,246,246,217,217,13,232,232 +++flock,143,73,73,143,32,32,143,71,71,143,143,143,143,32,143,143 +++fork,2,57,57,2,PNR,PNR,2,56,56,2,2,2,2,PNR,2,2 +++fremovexattr,237,199,199,237,16,16,235,191,191,249,249,220,220,16,235,235 +++fsconfig,431,431,431,431,431,431,431,431,431,431,431,431,431,431,431,431 +++fsetxattr,228,190,190,228,7,7,226,182,182,240,240,211,211,7,226,226 +++fsmount,432,432,432,432,432,432,432,432,432,432,432,432,432,432,432,432 +++fsopen,430,430,430,430,430,430,430,430,430,430,430,430,430,430,430,430 +++fspick,433,433,433,433,433,433,433,433,433,433,433,433,433,433,433,433 +++fstat,108,5,5,108,80,PNR,108,5,5,28,28,108,108,80,108,108 +++fstat64,197,PNR,PNR,197,PNR,PNR,215,PNR,PNR,112,112,197,PNR,PNR,197,PNR +++fstatat64,300,PNR,PNR,327,PNR,PNR,293,PNR,PNR,280,280,291,PNR,PNR,293,PNR +++fstatfs,100,138,138,100,44,44,100,135,135,100,100,100,100,44,100,100 +++fstatfs64,269,PNR,PNR,267,PNR,PNR,256,PNR,218,299,299,253,253,PNR,266,266 +++fsync,118,74,74,118,82,82,118,72,72,118,118,118,118,82,118,118 +++ftime,35,PNR,PNR,PNR,PNR,PNR,35,PNR,PNR,PNR,PNR,35,35,PNR,PNR,PNR +++ftruncate,93,77,77,93,46,46,93,75,75,93,93,93,93,46,93,93 +++ftruncate64,194,PNR,PNR,194,PNR,PNR,212,PNR,PNR,200,200,194,PNR,PNR,194,PNR +++futex,240,202,202,240,98,98,238,194,194,210,210,221,221,98,238,238 +++futex_requeue,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456 +++futex_time64,422,PNR,PNR,422,PNR,PNR,422,PNR,422,422,PNR,422,PNR,PNR,422,PNR +++futex_wait,455,455,455,455,455,455,455,455,455,455,455,455,455,455,455,455 +++futex_waitv,449,449,449,449,449,449,449,449,449,449,449,449,449,449,449,449 +++futex_wake,454,454,454,454,454,454,454,454,454,454,454,454,454,454,454,454 +++futimesat,299,261,261,326,PNR,PNR,292,251,255,279,279,290,290,PNR,292,292 +++getcpu,318,309,309,345,168,168,312,271,275,296,296,302,302,168,311,311 +++getcwd,183,79,79,183,17,17,203,77,77,110,110,182,182,17,183,183 +++getdents,141,78,78,141,PNR,PNR,141,76,76,141,141,141,141,PNR,141,141 +++getdents64,220,217,217,217,61,61,219,308,299,201,201,202,202,61,220,220 +++getegid,50,108,108,50,177,177,50,106,106,50,50,50,50,177,50,202 +++getegid32,202,PNR,PNR,202,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,202,PNR +++geteuid,49,107,107,49,175,175,49,105,105,49,49,49,49,175,49,201 +++geteuid32,201,PNR,PNR,201,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,201,PNR +++getgid,47,104,104,47,176,176,47,102,102,47,47,47,47,176,47,200 +++getgid32,200,PNR,PNR,200,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,200,PNR +++getgroups,80,115,115,80,158,158,80,113,113,80,80,80,80,158,80,205 +++getgroups32,205,PNR,PNR,205,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,205,PNR +++getitimer,105,36,36,105,102,102,105,35,35,105,105,105,105,102,105,105 +++get_kernel_syms,130,177,PNR,PNR,PNR,PNR,130,170,170,PNR,PNR,130,130,PNR,130,130 +++get_mempolicy,275,239,239,320,236,236,269,228,232,261,261,260,260,236,269,269 +++getpeername,368,52,52,287,205,205,171,51,51,53,53,332,332,205,368,368 +++getpgid,132,121,121,132,155,155,132,119,119,132,132,132,132,155,132,132 +++getpgrp,65,111,111,65,PNR,PNR,65,109,109,65,65,65,65,PNR,65,65 +++getpid,20,39,39,20,172,172,20,38,38,20,20,20,20,172,20,20 +++getpmsg,188,181,181,PNR,PNR,PNR,208,174,174,PNR,PNR,187,187,PNR,188,188 +++getppid,64,110,110,64,173,173,64,108,108,64,64,64,64,173,64,64 +++getpriority,96,140,140,96,141,141,96,137,137,96,96,96,96,141,96,96 +++getrandom,355,318,318,384,278,278,353,313,317,339,339,359,359,278,349,349 +++getresgid,171,120,120,171,150,150,191,118,118,171,171,170,170,150,171,211 +++getresgid32,211,PNR,PNR,211,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,211,PNR +++getresuid,165,118,118,165,148,148,186,116,116,165,165,165,165,148,165,209 +++getresuid32,209,PNR,PNR,209,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,209,PNR +++getrlimit,76,97,97,PNR,163,PNR,76,95,95,76,76,76,76,163,76,191 +++get_robust_list,312,274,531,339,100,100,310,269,273,290,290,299,299,100,305,305 +++getrusage,77,98,98,77,165,165,77,96,96,77,77,77,77,165,77,77 +++getsid,147,124,124,147,156,156,151,122,122,147,147,147,147,156,147,147 +++getsockname,367,51,51,286,204,204,172,50,50,44,44,331,331,204,367,367 +++getsockopt,365,55,542,295,209,209,173,54,54,182,182,340,340,209,365,365 +++get_thread_area,244,211,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++gettid,224,186,186,224,178,178,222,178,178,206,206,207,207,178,236,236 +++gettimeofday,78,96,96,78,169,169,78,94,94,78,78,78,78,169,78,78 +++get_tls,PNR,PNR,PNR,983046,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++getuid,24,102,102,24,174,174,24,100,100,24,24,24,24,174,24,199 +++getuid32,199,PNR,PNR,199,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,199,PNR +++getxattr,229,191,191,229,8,8,227,183,183,241,241,212,212,8,227,227 +++gtty,32,PNR,PNR,PNR,PNR,PNR,32,PNR,PNR,PNR,PNR,32,32,PNR,PNR,PNR +++idle,112,PNR,PNR,PNR,PNR,PNR,112,PNR,PNR,PNR,PNR,112,112,PNR,112,112 +++init_module,128,175,175,128,105,105,128,168,168,128,128,128,128,105,128,128 +++inotify_add_watch,292,254,254,317,27,27,285,244,248,270,270,276,276,27,285,285 +++inotify_init,291,253,253,316,PNR,PNR,284,243,247,269,269,275,275,PNR,284,284 +++inotify_init1,332,294,294,360,26,26,329,288,292,314,314,318,318,26,324,324 +++inotify_rm_watch,293,255,255,318,28,28,286,245,249,271,271,277,277,28,286,286 +++io_cancel,249,210,210,247,3,3,245,204,204,219,219,231,231,3,247,247 +++ioctl,54,16,514,54,29,29,54,15,15,54,54,54,54,29,54,54 +++io_destroy,246,207,207,244,1,1,242,201,201,216,216,228,228,1,244,244 +++io_getevents,247,208,208,245,4,4,243,202,202,217,217,229,229,4,245,245 +++ioperm,101,173,173,PNR,PNR,PNR,101,PNR,PNR,PNR,PNR,101,101,PNR,101,PNR +++io_pgetevents,385,333,333,399,292,292,368,328,332,350,350,388,388,292,382,382 +++io_pgetevents_time64,416,PNR,PNR,416,PNR,PNR,416,PNR,416,416,PNR,416,PNR,PNR,416,PNR +++iopl,110,172,172,PNR,PNR,PNR,110,PNR,PNR,PNR,PNR,110,110,PNR,PNR,PNR +++ioprio_get,290,252,252,315,31,31,315,274,278,268,268,274,274,31,283,283 +++ioprio_set,289,251,251,314,30,30,314,273,277,267,267,273,273,30,282,282 +++io_setup,245,206,543,243,0,0,241,200,200,215,215,227,227,0,243,243 +++io_submit,248,209,544,246,2,2,244,203,203,218,218,230,230,2,246,246 +++io_uring_enter,426,426,426,426,426,426,426,426,426,426,426,426,426,426,426,426 +++io_uring_register,427,427,427,427,427,427,427,427,427,427,427,427,427,427,427,427 +++io_uring_setup,425,425,425,425,425,425,425,425,425,425,425,425,425,425,425,425 +++ipc,117,PNR,PNR,PNR,PNR,PNR,117,PNR,PNR,PNR,PNR,117,117,PNR,117,117 +++kcmp,349,312,312,378,272,272,347,306,311,332,332,354,354,272,343,343 +++kexec_file_load,PNR,320,320,401,294,294,PNR,PNR,PNR,355,355,382,382,294,381,381 +++kexec_load,283,246,528,347,104,104,311,270,274,300,300,268,268,104,277,277 +++keyctl,288,250,250,311,219,219,282,241,245,266,266,271,271,219,280,280 +++kill,37,62,62,37,129,129,37,60,60,37,37,37,37,129,37,37 +++landlock_add_rule,445,445,445,445,445,445,445,445,445,445,445,445,445,445,445,445 +++landlock_create_ruleset,444,444,444,444,444,444,444,444,444,444,444,444,444,444,444,444 +++landlock_restrict_self,446,446,446,446,446,446,446,446,446,446,446,446,446,446,446,446 +++lchown,16,94,94,16,PNR,PNR,16,92,92,16,16,16,16,PNR,16,198 +++lchown32,198,PNR,PNR,198,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,198,PNR +++lgetxattr,230,192,192,230,9,9,228,184,184,242,242,213,213,9,228,228 +++link,9,86,86,9,PNR,PNR,9,84,84,9,9,9,9,PNR,9,9 +++linkat,303,265,265,330,37,37,296,255,259,283,283,294,294,37,296,296 +++listen,363,50,50,284,201,201,174,49,49,32,32,329,329,201,363,363 +++listxattr,232,194,194,232,11,11,230,186,186,244,244,215,215,11,230,230 +++llistxattr,233,195,195,233,12,12,231,187,187,245,245,216,216,12,231,231 +++_llseek,140,PNR,PNR,140,PNR,PNR,140,PNR,PNR,140,140,140,140,PNR,140,PNR +++lock,53,PNR,PNR,PNR,PNR,PNR,53,PNR,PNR,PNR,PNR,53,53,PNR,PNR,PNR +++lookup_dcookie,253,212,212,249,18,18,247,206,206,223,223,235,235,18,110,110 +++lremovexattr,236,198,198,236,15,15,234,190,190,248,248,219,219,15,234,234 +++lseek,19,8,8,19,62,62,19,8,8,19,19,19,19,62,19,19 +++lsetxattr,227,189,189,227,6,6,225,181,181,239,239,210,210,6,225,225 +++lstat,107,6,6,107,PNR,PNR,107,6,6,84,84,107,107,PNR,107,107 +++lstat64,196,PNR,PNR,196,PNR,PNR,214,PNR,PNR,198,198,196,PNR,PNR,196,PNR +++madvise,219,28,28,220,233,233,218,27,27,119,119,205,205,233,219,219 +++map_shadow_stack,453,453,PNR,453,453,453,453,453,453,453,453,453,453,453,453,453 +++mbind,274,237,237,319,235,235,268,227,231,260,260,259,259,235,268,268 +++membarrier,375,324,324,389,283,283,358,318,322,343,343,365,365,283,356,356 +++memfd_create,356,319,319,385,279,279,354,314,318,340,340,360,360,279,350,350 +++memfd_secret,447,447,447,PNR,447,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,447,447,447 +++migrate_pages,294,256,256,400,238,238,287,246,250,272,272,258,258,238,287,287 +++mincore,218,27,27,219,232,232,217,26,26,72,72,206,206,232,218,218 +++mkdir,39,83,83,39,PNR,PNR,39,81,81,39,39,39,39,PNR,39,39 +++mkdirat,296,258,258,323,34,34,289,248,252,276,276,287,287,34,289,289 +++mknod,14,133,133,14,PNR,PNR,14,131,131,14,14,14,14,PNR,14,14 +++mknodat,297,259,259,324,33,33,290,249,253,277,277,288,288,33,290,290 +++mlock,150,149,149,150,228,228,154,146,146,150,150,150,150,228,150,150 +++mlock2,376,325,325,390,284,284,359,319,323,345,345,378,378,284,374,374 +++mlockall,152,151,151,152,230,230,156,148,148,152,152,152,152,230,152,152 +++mmap,90,9,9,PNR,222,222,90,9,9,90,90,90,90,222,90,90 +++mmap2,192,PNR,PNR,192,PNR,PNR,210,PNR,PNR,89,89,192,PNR,PNR,192,PNR +++modify_ldt,123,154,154,PNR,PNR,PNR,123,PNR,PNR,PNR,PNR,123,123,PNR,PNR,PNR +++mount,21,165,165,21,40,40,21,160,160,21,21,21,21,40,21,21 +++mount_setattr,442,442,442,442,442,442,442,442,442,442,442,442,442,442,442,442 +++move_mount,429,429,429,429,429,429,429,429,429,429,429,429,429,429,429,429 +++move_pages,317,279,533,344,239,239,308,267,271,295,295,301,301,239,310,310 +++mprotect,125,10,10,125,226,226,125,10,10,125,125,125,125,226,125,125 +++mpx,56,PNR,PNR,PNR,PNR,PNR,56,PNR,PNR,PNR,PNR,56,56,PNR,PNR,PNR +++mq_getsetattr,282,245,245,279,185,185,276,235,239,234,234,267,267,185,276,276 +++mq_notify,281,244,527,278,184,184,275,234,238,233,233,266,266,184,275,275 +++mq_open,277,240,240,274,180,180,271,230,234,229,229,262,262,180,271,271 +++mq_timedreceive,280,243,243,277,183,183,274,233,237,232,232,265,265,183,274,274 +++mq_timedreceive_time64,419,PNR,PNR,419,PNR,PNR,419,PNR,419,419,PNR,419,PNR,PNR,419,PNR +++mq_timedsend,279,242,242,276,182,182,273,232,236,231,231,264,264,182,273,273 +++mq_timedsend_time64,418,PNR,PNR,418,PNR,PNR,418,PNR,418,418,PNR,418,PNR,PNR,418,PNR +++mq_unlink,278,241,241,275,181,181,272,231,235,230,230,263,263,181,272,272 +++mremap,163,25,25,163,216,216,167,24,24,163,163,163,163,216,163,163 +++msgctl,402,71,71,304,187,187,402,69,69,191,191,402,402,187,402,402 +++msgget,399,68,68,303,186,186,399,66,66,190,190,399,399,186,399,399 +++msgrcv,401,70,70,302,188,188,401,68,68,189,189,401,401,188,401,401 +++msgsnd,400,69,69,301,189,189,400,67,67,188,188,400,400,189,400,400 +++msync,144,26,26,144,227,227,144,25,25,144,144,144,144,227,144,144 +++multiplexer,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,201,201,PNR,PNR,PNR +++munlock,151,150,150,151,229,229,155,147,147,151,151,151,151,229,151,151 +++munlockall,153,152,152,153,231,231,157,149,149,153,153,153,153,231,153,153 +++munmap,91,11,11,91,215,215,91,11,11,91,91,91,91,215,91,91 +++name_to_handle_at,341,303,303,370,264,264,339,298,303,325,325,345,345,264,335,335 +++nanosleep,162,35,35,162,101,101,166,34,34,162,162,162,162,101,162,162 +++newfstatat,PNR,262,262,PNR,79,PNR,PNR,252,256,PNR,PNR,PNR,291,79,PNR,293 +++_newselect,142,PNR,PNR,142,PNR,PNR,142,22,22,142,142,142,142,PNR,142,PNR +++nfsservctl,169,180,PNR,169,42,42,189,173,173,PNR,PNR,168,168,42,169,169 +++nice,34,PNR,PNR,34,PNR,PNR,34,PNR,PNR,34,34,34,34,PNR,34,34 +++oldfstat,28,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,28,28,PNR,PNR,PNR +++oldlstat,84,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,84,84,PNR,PNR,PNR +++oldolduname,59,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,59,59,PNR,PNR,PNR +++oldstat,18,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,18,18,PNR,PNR,PNR +++olduname,109,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,109,109,PNR,PNR,PNR +++open,5,2,2,5,PNR,PNR,5,2,2,5,5,5,5,PNR,5,5 +++openat,295,257,257,322,56,56,288,247,251,275,275,286,286,56,288,288 +++openat2,437,437,437,437,437,437,437,437,437,437,437,437,437,437,437,437 +++open_by_handle_at,342,304,304,371,265,265,340,299,304,326,326,346,346,265,336,336 +++open_tree,428,428,428,428,428,428,428,428,428,428,428,428,428,428,428,428 +++pause,29,34,34,29,PNR,PNR,29,33,33,29,29,29,29,PNR,29,29 +++pciconfig_iobase,PNR,PNR,PNR,271,PNR,PNR,PNR,PNR,PNR,PNR,PNR,200,200,PNR,PNR,PNR +++pciconfig_read,PNR,PNR,PNR,272,PNR,PNR,PNR,PNR,PNR,PNR,PNR,198,198,PNR,PNR,PNR +++pciconfig_write,PNR,PNR,PNR,273,PNR,PNR,PNR,PNR,PNR,PNR,PNR,199,199,PNR,PNR,PNR +++perf_event_open,336,298,298,364,241,241,333,292,296,318,318,319,319,241,331,331 +++personality,136,135,135,136,92,92,136,132,132,136,136,136,136,92,136,136 +++pidfd_getfd,438,438,438,438,438,438,438,438,438,438,438,438,438,438,438,438 +++pidfd_open,434,434,434,434,434,434,434,434,434,434,434,434,434,434,434,434 +++pidfd_send_signal,424,424,424,424,424,424,424,424,424,424,424,424,424,424,424,424 +++pipe,42,22,22,42,PNR,PNR,42,21,21,42,42,42,42,PNR,42,42 +++pipe2,331,293,293,359,59,59,328,287,291,313,313,317,317,59,325,325 +++pivot_root,217,155,155,218,41,41,216,151,151,67,67,203,203,41,217,217 +++pkey_alloc,381,330,330,395,289,289,364,324,328,352,352,384,384,289,385,385 +++pkey_free,382,331,331,396,290,290,365,325,329,353,353,385,385,290,386,386 +++pkey_mprotect,380,329,329,394,288,288,363,323,327,351,351,386,386,288,384,384 +++poll,168,7,7,168,PNR,PNR,188,7,7,168,168,167,167,PNR,168,168 +++ppoll,309,271,271,336,73,73,302,261,265,274,274,281,281,73,302,302 +++ppoll_time64,414,PNR,PNR,414,PNR,PNR,414,PNR,414,414,PNR,414,PNR,PNR,414,PNR +++prctl,172,157,157,172,167,167,192,153,153,172,172,171,171,167,172,172 +++pread64,180,17,17,180,67,67,200,16,16,108,108,179,179,67,180,180 +++preadv,333,295,534,361,69,69,330,289,293,315,315,320,320,69,328,328 +++preadv2,378,327,546,392,286,286,361,321,325,347,347,380,380,286,376,376 +++prlimit64,340,302,302,369,261,261,338,297,302,321,321,325,325,261,334,334 +++process_madvise,440,440,440,440,440,440,440,440,440,440,440,440,440,440,440,440 +++process_mrelease,448,448,448,448,448,448,448,448,448,448,448,448,448,448,448,448 +++process_vm_readv,347,310,539,376,270,270,345,304,309,330,330,351,351,270,340,340 +++process_vm_writev,348,311,540,377,271,271,346,305,310,331,331,352,352,271,341,341 +++prof,44,PNR,PNR,PNR,PNR,PNR,44,PNR,PNR,PNR,PNR,44,44,PNR,PNR,PNR +++profil,98,PNR,PNR,PNR,PNR,PNR,98,PNR,PNR,PNR,PNR,98,98,PNR,PNR,PNR +++pselect6,308,270,270,335,72,72,301,260,264,273,273,280,280,72,301,301 +++pselect6_time64,413,PNR,PNR,413,PNR,PNR,413,PNR,413,413,PNR,413,PNR,PNR,413,PNR +++ptrace,26,101,521,26,117,117,26,99,99,26,26,26,26,117,26,26 +++putpmsg,189,182,182,PNR,PNR,PNR,209,175,175,PNR,PNR,188,188,PNR,189,189 +++pwrite64,181,18,18,181,68,68,201,17,17,109,109,180,180,68,181,181 +++pwritev,334,296,535,362,70,70,331,290,294,316,316,321,321,70,329,329 +++pwritev2,379,328,547,393,287,287,362,322,326,348,348,381,381,287,377,377 +++query_module,167,178,PNR,PNR,PNR,PNR,187,171,171,PNR,PNR,166,166,PNR,167,167 +++quotactl,131,179,179,131,60,60,131,172,172,131,131,131,131,60,131,131 +++quotactl_fd,443,443,443,443,443,443,443,443,443,443,443,443,443,443,443,443 +++read,3,0,0,3,63,63,3,0,0,3,3,3,3,63,3,3 +++readahead,225,187,187,225,213,213,223,179,179,207,207,191,191,213,222,222 +++readdir,89,PNR,PNR,PNR,PNR,PNR,89,PNR,PNR,PNR,PNR,89,89,PNR,89,89 +++readlink,85,89,89,85,PNR,PNR,85,87,87,85,85,85,85,PNR,85,85 +++readlinkat,305,267,267,332,78,78,298,257,261,285,285,296,296,78,298,298 +++readv,145,19,515,145,65,65,145,18,18,145,145,145,145,65,145,145 +++reboot,88,169,169,88,142,142,88,164,164,88,88,88,88,142,88,88 +++recv,PNR,PNR,PNR,291,PNR,PNR,175,PNR,PNR,98,98,336,336,PNR,PNR,PNR +++recvfrom,371,45,517,292,207,207,176,44,44,123,123,337,337,207,371,371 +++recvmmsg,337,299,537,365,243,243,335,294,298,319,319,343,343,243,357,357 +++recvmmsg_time64,417,PNR,PNR,417,PNR,PNR,417,PNR,417,417,PNR,417,PNR,PNR,417,PNR +++recvmsg,372,47,519,297,212,212,177,46,46,184,184,342,342,212,372,372 +++remap_file_pages,257,216,216,253,234,234,251,210,210,227,227,239,239,234,267,267 +++removexattr,235,197,197,235,14,14,233,189,189,247,247,218,218,14,233,233 +++rename,38,82,82,38,PNR,PNR,38,80,80,38,38,38,38,PNR,38,38 +++renameat,302,264,264,329,38,PNR,295,254,258,282,282,293,293,PNR,295,295 +++renameat2,353,316,316,382,276,276,351,311,315,337,337,357,357,276,347,347 +++request_key,287,249,249,310,218,218,281,240,244,265,265,270,270,218,279,279 +++restart_syscall,0,219,219,0,128,128,253,213,214,0,0,0,0,128,7,7 +++riscv_flush_icache,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,259,PNR,PNR +++rmdir,40,84,84,40,PNR,PNR,40,82,82,40,40,40,40,PNR,40,40 +++rseq,386,334,334,398,293,293,367,327,331,354,354,387,387,293,383,383 +++rtas,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,255,255,PNR,PNR,PNR +++rt_sigaction,174,13,512,174,134,134,194,13,13,174,174,173,173,134,174,174 +++rt_sigpending,176,127,522,176,136,136,196,125,125,176,176,175,175,136,176,176 +++rt_sigprocmask,175,14,14,175,135,135,195,14,14,175,175,174,174,135,175,175 +++rt_sigqueueinfo,178,129,524,178,138,138,198,127,127,178,178,177,177,138,178,178 +++rt_sigreturn,173,15,513,173,139,139,193,211,211,173,173,172,172,139,173,173 +++rt_sigsuspend,179,130,130,179,133,133,199,128,128,179,179,178,178,133,179,179 +++rt_sigtimedwait,177,128,523,177,137,137,197,126,126,177,177,176,176,137,177,177 +++rt_sigtimedwait_time64,421,PNR,PNR,421,PNR,PNR,421,PNR,421,421,PNR,421,PNR,PNR,421,PNR +++rt_tgsigqueueinfo,335,297,536,363,240,240,332,291,295,317,317,322,322,240,330,330 +++s390_guarded_storage,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,378,378 +++s390_pci_mmio_read,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,353,353 +++s390_pci_mmio_write,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,352,352 +++s390_runtime_instr,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,342,342 +++s390_sthyi,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,380,380 +++sched_getaffinity,242,204,204,242,123,123,240,196,196,212,212,223,223,123,240,240 +++sched_getattr,352,315,315,381,275,275,350,310,314,335,335,356,356,275,346,346 +++sched_getparam,155,143,143,155,121,121,159,140,140,155,155,155,155,121,155,155 +++sched_get_priority_max,159,146,146,159,125,125,163,143,143,159,159,159,159,125,159,159 +++sched_get_priority_min,160,147,147,160,126,126,164,144,144,160,160,160,160,126,160,160 +++sched_getscheduler,157,145,145,157,120,120,161,142,142,157,157,157,157,120,157,157 +++sched_rr_get_interval,161,148,148,161,127,127,165,145,145,161,161,161,161,127,161,161 +++sched_rr_get_interval_time64,423,PNR,PNR,423,PNR,PNR,423,PNR,423,423,PNR,423,PNR,PNR,423,PNR +++sched_setaffinity,241,203,203,241,122,122,239,195,195,211,211,222,222,122,239,239 +++sched_setattr,351,314,314,380,274,274,349,309,313,334,334,355,355,274,345,345 +++sched_setparam,154,142,142,154,118,118,158,139,139,154,154,154,154,118,154,154 +++sched_setscheduler,156,144,144,156,119,119,160,141,141,156,156,156,156,119,156,156 +++sched_yield,158,24,24,158,124,124,162,23,23,158,158,158,158,124,158,158 +++seccomp,354,317,317,383,277,277,352,312,316,338,338,358,358,277,348,348 +++security,PNR,185,185,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++select,82,23,23,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,82,82,PNR,PNR,142 +++semctl,394,66,66,300,191,191,394,64,64,187,187,394,394,191,394,394 +++semget,393,64,64,299,190,190,393,62,62,186,186,393,393,190,393,393 +++semop,PNR,65,65,298,193,193,PNR,63,63,185,185,PNR,PNR,193,PNR,PNR +++semtimedop,PNR,220,220,312,192,192,PNR,214,215,228,228,PNR,392,192,PNR,392 +++semtimedop_time64,420,PNR,PNR,420,PNR,PNR,420,PNR,420,420,PNR,420,PNR,PNR,420,PNR +++send,PNR,PNR,PNR,289,PNR,PNR,178,PNR,PNR,58,58,334,334,PNR,PNR,PNR +++sendfile,187,40,40,187,71,71,207,39,39,122,122,186,186,71,187,187 +++sendfile64,239,PNR,PNR,239,PNR,PNR,237,PNR,219,209,209,226,PNR,PNR,223,PNR +++sendmmsg,345,307,538,374,269,269,343,302,307,329,329,349,349,269,358,358 +++sendmsg,370,46,518,296,211,211,179,45,45,183,183,341,341,211,370,370 +++sendto,369,44,44,290,206,206,180,43,43,82,82,335,335,206,369,369 +++setdomainname,121,171,171,121,162,162,121,166,166,121,121,121,121,162,121,121 +++setfsgid,139,123,123,139,152,152,139,121,121,139,139,139,139,152,139,216 +++setfsgid32,216,PNR,PNR,216,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,216,PNR +++setfsuid,138,122,122,138,151,151,138,120,120,138,138,138,138,151,138,215 +++setfsuid32,215,PNR,PNR,215,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,215,PNR +++setgid,46,106,106,46,144,144,46,104,104,46,46,46,46,144,46,214 +++setgid32,214,PNR,PNR,214,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,214,PNR +++setgroups,81,116,116,81,159,159,81,114,114,81,81,81,81,159,81,206 +++setgroups32,206,PNR,PNR,206,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,206,PNR +++sethostname,74,170,170,74,161,161,74,165,165,74,74,74,74,161,74,74 +++setitimer,104,38,38,104,103,103,104,36,36,104,104,104,104,103,104,104 +++set_mempolicy,276,238,238,321,237,237,270,229,233,262,262,261,261,237,270,270 +++set_mempolicy_home_node,450,450,450,450,450,450,450,450,450,450,450,450,450,450,450,450 +++setns,346,308,308,375,268,268,344,303,308,328,328,350,350,268,339,339 +++setpgid,57,109,109,57,154,154,57,107,107,57,57,57,57,154,57,57 +++setpriority,97,141,141,97,140,140,97,138,138,97,97,97,97,140,97,97 +++setregid,71,114,114,71,143,143,71,112,112,71,71,71,71,143,71,204 +++setregid32,204,PNR,PNR,204,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,204,PNR +++setresgid,170,119,119,170,149,149,190,117,117,170,170,169,169,149,170,210 +++setresgid32,210,PNR,PNR,210,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,210,PNR +++setresuid,164,117,117,164,147,147,185,115,115,164,164,164,164,147,164,208 +++setresuid32,208,PNR,PNR,208,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,208,PNR +++setreuid,70,113,113,70,145,145,70,111,111,70,70,70,70,145,70,203 +++setreuid32,203,PNR,PNR,203,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,203,PNR +++setrlimit,75,160,160,75,164,PNR,75,155,155,75,75,75,75,164,75,75 +++set_robust_list,311,273,530,338,99,99,309,268,272,289,289,300,300,99,304,304 +++setsid,66,112,112,66,157,157,66,110,110,66,66,66,66,157,66,66 +++setsockopt,366,54,541,294,208,208,181,53,53,181,181,339,339,208,366,366 +++set_thread_area,243,205,PNR,PNR,PNR,PNR,283,242,246,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++set_tid_address,258,218,218,256,96,96,252,212,213,237,237,232,232,96,252,252 +++settimeofday,79,164,164,79,170,170,79,159,159,79,79,79,79,170,79,79 +++set_tls,PNR,PNR,PNR,983045,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++setuid,23,105,105,23,146,146,23,103,103,23,23,23,23,146,23,213 +++setuid32,213,PNR,PNR,213,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,213,PNR +++setxattr,226,188,188,226,5,5,224,180,180,238,238,209,209,5,224,224 +++sgetmask,68,PNR,PNR,PNR,PNR,PNR,68,PNR,PNR,68,68,68,68,PNR,PNR,PNR +++shmat,397,30,30,305,196,196,397,29,29,192,192,397,397,196,397,397 +++shmctl,396,31,31,308,195,195,396,30,30,195,195,396,396,195,396,396 +++shmdt,398,67,67,306,197,197,398,65,65,193,193,398,398,197,398,398 +++shmget,395,29,29,307,194,194,395,28,28,194,194,395,395,194,395,395 +++shutdown,373,48,48,293,210,210,182,47,47,117,117,338,338,210,373,373 +++sigaction,67,PNR,PNR,67,PNR,PNR,67,PNR,PNR,PNR,PNR,67,67,PNR,67,67 +++sigaltstack,186,131,525,186,132,132,206,129,129,166,166,185,185,132,186,186 +++signal,48,PNR,PNR,PNR,PNR,PNR,48,PNR,PNR,48,48,48,48,PNR,48,48 +++signalfd,321,282,282,349,PNR,PNR,317,276,280,302,302,305,305,PNR,316,316 +++signalfd4,327,289,289,355,74,74,324,283,287,309,309,313,313,74,322,322 +++sigpending,73,PNR,PNR,73,PNR,PNR,73,PNR,PNR,73,73,73,73,PNR,73,73 +++sigprocmask,126,PNR,PNR,126,PNR,PNR,126,PNR,PNR,126,126,126,126,PNR,126,126 +++sigreturn,119,PNR,PNR,119,PNR,PNR,119,PNR,PNR,PNR,PNR,119,119,PNR,119,119 +++sigsuspend,72,PNR,PNR,72,PNR,PNR,72,PNR,PNR,PNR,PNR,72,72,PNR,72,72 +++socket,359,41,41,281,198,198,183,40,40,17,17,326,326,198,359,359 +++socketcall,102,PNR,PNR,PNR,PNR,PNR,102,PNR,PNR,PNR,PNR,102,102,PNR,102,102 +++socketpair,360,53,53,288,199,199,184,52,52,56,56,333,333,199,360,360 +++splice,313,275,275,340,76,76,304,263,267,291,291,283,283,76,306,306 +++spu_create,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,279,279,PNR,PNR,PNR +++spu_run,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,278,278,PNR,PNR,PNR +++ssetmask,69,PNR,PNR,PNR,PNR,PNR,69,PNR,PNR,69,69,69,69,PNR,PNR,PNR +++stat,106,4,4,106,PNR,PNR,106,4,4,18,18,106,106,PNR,106,106 +++stat64,195,PNR,PNR,195,PNR,PNR,213,PNR,PNR,101,101,195,PNR,PNR,195,PNR +++statfs,99,137,137,99,43,43,99,134,134,99,99,99,99,43,99,99 +++statfs64,268,PNR,PNR,266,PNR,PNR,255,PNR,217,298,298,252,252,PNR,265,265 +++statx,383,332,332,397,291,291,366,326,330,349,349,383,383,291,379,379 +++stime,25,PNR,PNR,PNR,PNR,PNR,25,PNR,PNR,25,25,25,25,PNR,25,PNR +++stty,31,PNR,PNR,PNR,PNR,PNR,31,PNR,PNR,PNR,PNR,31,31,PNR,PNR,PNR +++subpage_prot,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,310,310,PNR,PNR,PNR +++swapcontext,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,249,249,PNR,PNR,PNR +++swapoff,115,168,168,115,225,225,115,163,163,115,115,115,115,225,115,115 +++swapon,87,167,167,87,224,224,87,162,162,87,87,87,87,224,87,87 +++switch_endian,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,363,363,PNR,PNR,PNR +++symlink,83,88,88,83,PNR,PNR,83,86,86,83,83,83,83,PNR,83,83 +++symlinkat,304,266,266,331,36,36,297,256,260,284,284,295,295,36,297,297 +++sync,36,162,162,36,81,81,36,157,157,36,36,36,36,81,36,36 +++sync_file_range,314,277,277,PNR,84,84,305,264,268,292,292,PNR,PNR,84,307,307 +++sync_file_range2,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,308,308,PNR,PNR,PNR +++syncfs,344,306,306,373,267,267,342,301,306,327,327,348,348,267,338,338 +++syscall,PNR,PNR,PNR,PNR,PNR,PNR,0,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++_sysctl,149,156,PNR,149,PNR,PNR,153,152,152,149,149,149,149,PNR,149,149 +++sys_debug_setcontext,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,256,256,PNR,PNR,PNR +++sysfs,135,139,139,135,PNR,PNR,135,136,136,135,135,135,135,PNR,135,135 +++sysinfo,116,99,99,116,179,179,116,97,97,116,116,116,116,179,116,116 +++syslog,103,103,103,103,116,116,103,101,101,103,103,103,103,116,103,103 +++sysmips,PNR,PNR,PNR,PNR,PNR,PNR,149,199,199,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++tee,315,276,276,342,77,77,306,265,269,293,293,284,284,77,308,308 +++tgkill,270,234,234,268,131,131,266,225,229,259,259,250,250,131,241,241 +++time,13,201,201,PNR,PNR,PNR,13,PNR,PNR,13,13,13,13,PNR,13,PNR +++timer_create,259,222,526,257,107,107,257,216,220,250,250,240,240,107,254,254 +++timer_delete,263,226,226,261,111,111,261,220,224,254,254,244,244,111,258,258 +++timerfd,PNR,PNR,PNR,PNR,PNR,PNR,318,277,281,PNR,PNR,PNR,PNR,PNR,317,317 +++timerfd_create,322,283,283,350,85,85,321,280,284,306,306,306,306,85,319,319 +++timerfd_gettime,326,287,287,354,87,87,322,281,285,308,308,312,312,87,321,321 +++timerfd_gettime64,410,PNR,PNR,410,PNR,PNR,410,PNR,410,410,PNR,410,PNR,PNR,410,PNR +++timerfd_settime,325,286,286,353,86,86,323,282,286,307,307,311,311,86,320,320 +++timerfd_settime64,411,PNR,PNR,411,PNR,PNR,411,PNR,411,411,PNR,411,PNR,PNR,411,PNR +++timer_getoverrun,262,225,225,260,109,109,260,219,223,253,253,243,243,109,257,257 +++timer_gettime,261,224,224,259,108,108,259,218,222,252,252,242,242,108,256,256 +++timer_gettime64,408,PNR,PNR,408,PNR,PNR,408,PNR,408,408,PNR,408,PNR,PNR,408,PNR +++timer_settime,260,223,223,258,110,110,258,217,221,251,251,241,241,110,255,255 +++timer_settime64,409,PNR,PNR,409,PNR,PNR,409,PNR,409,409,PNR,409,PNR,PNR,409,PNR +++times,43,100,100,43,153,153,43,98,98,43,43,43,43,153,43,43 +++tkill,238,200,200,238,130,130,236,192,192,208,208,208,208,130,237,237 +++truncate,92,76,76,92,45,45,92,74,74,92,92,92,92,45,92,92 +++truncate64,193,PNR,PNR,193,PNR,PNR,211,PNR,PNR,199,199,193,PNR,PNR,193,PNR +++tuxcall,PNR,184,184,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,225,225,PNR,PNR,PNR +++ugetrlimit,191,PNR,PNR,191,PNR,PNR,PNR,PNR,PNR,PNR,PNR,190,190,PNR,191,PNR +++ulimit,58,PNR,PNR,PNR,PNR,PNR,58,PNR,PNR,PNR,PNR,58,58,PNR,PNR,PNR +++umask,60,95,95,60,166,166,60,93,93,60,60,60,60,166,60,60 +++umount,22,PNR,PNR,PNR,PNR,PNR,22,PNR,PNR,PNR,PNR,22,22,PNR,22,22 +++umount2,52,166,166,52,39,39,52,161,161,52,52,52,52,39,52,52 +++uname,122,63,63,122,160,160,122,61,61,59,59,122,122,160,122,122 +++unlink,10,87,87,10,PNR,PNR,10,85,85,10,10,10,10,PNR,10,10 +++unlinkat,301,263,263,328,35,35,294,253,257,281,281,292,292,35,294,294 +++unshare,310,272,272,337,97,97,303,262,266,288,288,282,282,97,303,303 +++uselib,86,134,PNR,86,PNR,PNR,86,PNR,PNR,86,86,86,86,PNR,86,86 +++userfaultfd,374,323,323,388,282,282,357,317,321,344,344,364,364,282,355,355 +++usr26,PNR,PNR,PNR,983043,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++usr32,PNR,PNR,PNR,983044,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++ustat,62,136,136,62,PNR,PNR,62,133,133,62,62,62,62,PNR,62,62 +++utime,30,132,132,PNR,PNR,PNR,30,130,130,30,30,30,30,PNR,30,30 +++utimensat,320,280,280,348,88,88,316,275,279,301,301,304,304,88,315,315 +++utimensat_time64,412,PNR,PNR,412,PNR,PNR,412,PNR,412,412,PNR,412,PNR,PNR,412,PNR +++utimes,271,235,235,269,PNR,PNR,267,226,230,336,336,251,251,PNR,313,313 +++vfork,190,58,58,190,PNR,PNR,PNR,PNR,PNR,113,113,189,189,PNR,190,190 +++vhangup,111,153,153,111,58,58,111,150,150,111,111,111,111,58,111,111 +++vm86,166,PNR,PNR,PNR,PNR,PNR,113,PNR,PNR,PNR,PNR,113,113,PNR,PNR,PNR +++vm86old,113,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++vmsplice,316,278,532,343,75,75,307,266,270,294,294,285,285,75,309,309 +++vserver,273,236,PNR,313,PNR,PNR,277,236,240,PNR,PNR,PNR,PNR,PNR,PNR,PNR +++wait4,114,61,61,114,260,260,114,59,59,114,114,114,114,260,114,114 +++waitid,284,247,529,280,95,95,278,237,241,235,235,272,272,95,281,281 +++waitpid,7,PNR,PNR,PNR,PNR,PNR,7,PNR,PNR,7,7,7,7,PNR,PNR,PNR +++write,4,1,1,4,64,64,4,1,1,4,4,4,4,64,4,4 +++writev,146,20,516,146,66,66,146,19,19,146,146,146,146,66,146,146 diff --cc debian/patches/tests_Add_64-bit_LoongArch_support.patch index 0000000,0000000..1f39060 new file mode 100644 --- /dev/null +++ b/debian/patches/tests_Add_64-bit_LoongArch_support.patch @@@ -1,0 -1,0 +1,569 @@@ ++From 80c2c9fe4eac515b31292c522b51657800028018 Mon Sep 17 00:00:00 2001 ++From: Xiaotian Wu ++Date: Tue, 9 Feb 2021 15:52:18 +0800 ++Subject: [PATCH] tests: Add 64-bit LoongArch support ++ ++[xen0n: LoongArch (and a few upcoming architectures / ABIs) does not ++have fstat, so the fstat in 06-sim-actions is also being changed to ++fstatfs for uniformity across the board.] ++ ++Signed-off-by: Xiaotian Wu ++Signed-off-by: WANG Xuerui ++Acked-by: Tom Hromatka ++Signed-off-by: Paul Moore ++--- ++ tests/06-sim-actions.py | 2 +- ++ tests/06-sim-actions.tests | 7 ++- ++ tests/15-basic-resolver.c | 1 + ++ tests/16-sim-arch_basic.c | 6 ++ ++ 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/36-sim-ipc_syscalls.c | 3 + ++ tests/38-basic-pfc_coverage.c | 3 + ++ tests/38-basic-pfc_coverage.pfc | 97 ++++++++++++++++++++++++++++++ ++ tests/53-sim-binary_tree.c | 3 + ++ tests/53-sim-binary_tree.py | 1 + ++ tests/53-sim-binary_tree.tests | 78 ++++++++++++------------ ++ tests/55-basic-pfc_binary_tree.c | 3 + ++ tests/55-basic-pfc_binary_tree.pfc | 87 +++++++++++++++++++++++++++ ++ tests/56-basic-iterate_syscalls.c | 1 + ++ tests/56-basic-iterate_syscalls.py | 1 + ++ tests/regression | 4 +- ++ 18 files changed, 258 insertions(+), 44 deletions(-) ++ ++diff --git a/tests/06-sim-actions.py b/tests/06-sim-actions.py ++index 253061df..cfbd4f47 100755 ++--- a/tests/06-sim-actions.py +++++ b/tests/06-sim-actions.py ++@@ -38,7 +38,7 @@ def test(args): ++ f.add_rule(ERRNO(errno.EPERM), "write") ++ f.add_rule(TRAP, "close") ++ f.add_rule(TRACE(1234), "openat") ++- f.add_rule(KILL_PROCESS, "fstat") +++ f.add_rule(KILL_PROCESS, "fstatfs") ++ return f ++ ++ args = util.get_opt() ++diff --git a/tests/06-sim-actions.tests b/tests/06-sim-actions.tests ++index 0d1fda45..2092c385 100644 ++--- a/tests/06-sim-actions.tests +++++ b/tests/06-sim-actions.tests ++@@ -15,12 +15,13 @@ test type: bpf-sim ++ 06-sim-actions all fstatfs 4 0x856B008 N N N N KILL_PROCESS ++ 06-sim-actions all rt_sigreturn N N N N N N LOG ++ 06-sim-actions x86 0-2 N N N N N N KILL ++-06-sim-actions x86 7-107 N N N N N N KILL ++-06-sim-actions x86 109-172 N N N N N N KILL +++06-sim-actions x86 7-99 N N N N N N KILL +++06-sim-actions x86 101-172 N N N N N N KILL ++ 06-sim-actions x86 174-294 N N N N N N KILL ++ 06-sim-actions x86 296-350 N N N N N N KILL ++ 06-sim-actions x86_64 6-14 N N N N N N KILL ++-06-sim-actions x86_64 16-256 N N N N N N KILL +++06-sim-actions x86_64 16-137 N N N N N N KILL +++06-sim-actions x86_64 139-256 N N N N N N KILL ++ 06-sim-actions x86_64 258-350 N N N N N N KILL ++ ++ test type: bpf-sim-fuzz ++diff --git a/tests/15-basic-resolver.c b/tests/15-basic-resolver.c ++index c759dd19..bdb73f79 100644 ++--- a/tests/15-basic-resolver.c +++++ b/tests/15-basic-resolver.c ++@@ -32,6 +32,7 @@ unsigned int arch_list[] = { ++ SCMP_ARCH_X32, ++ SCMP_ARCH_ARM, ++ 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 4fcbb5ca..be269c99 100644 ++--- a/tests/16-sim-arch_basic.c +++++ b/tests/16-sim-arch_basic.c ++@@ -78,6 +78,9 @@ int main(int argc, char *argv[]) ++ if (rc != 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64); +++ if (rc != 0) +++ goto out; +++ rc = seccomp_arch_add(ctx, SCMP_ARCH_LOONGARCH64); ++ if (rc != 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_MIPSEL); ++@@ -148,6 +151,9 @@ int main(int argc, char *argv[]) ++ if (rc != 0) ++ goto out; ++ rc = seccomp_arch_remove(ctx, SCMP_ARCH_AARCH64); +++ if (rc != 0) +++ goto out; +++ rc = seccomp_arch_remove(ctx, SCMP_ARCH_LOONGARCH64); ++ if (rc != 0) ++ 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 f22c9855..79e68541 100755 ++--- a/tests/16-sim-arch_basic.py +++++ b/tests/16-sim-arch_basic.py ++@@ -40,6 +40,7 @@ def test(args): ++ f.add_arch(Arch("x32")) ++ f.add_arch(Arch("arm")) ++ 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 08f030c8..ef6d2c3a 100644 ++--- a/tests/23-sim-arch_all_le_basic.c +++++ b/tests/23-sim-arch_all_le_basic.c ++@@ -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")); +++ if (rc != 0) +++ goto out; +++ rc = seccomp_arch_add(ctx, seccomp_arch_resolve_name("loongarch64")); ++ if (rc != 0) ++ 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 12bb243f..783dc251 100755 ++--- a/tests/23-sim-arch_all_le_basic.py +++++ b/tests/23-sim-arch_all_le_basic.py ++@@ -36,6 +36,7 @@ def test(args): ++ f.add_arch(Arch("x32")) ++ f.add_arch(Arch("arm")) ++ 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/36-sim-ipc_syscalls.c b/tests/36-sim-ipc_syscalls.c ++index 06aaf6ac..da087e9a 100644 ++--- a/tests/36-sim-ipc_syscalls.c +++++ b/tests/36-sim-ipc_syscalls.c ++@@ -60,6 +60,9 @@ int main(int argc, char *argv[]) ++ if (rc != 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_MIPSEL); +++ if (rc != 0) +++ goto out; +++ rc = seccomp_arch_add(ctx, SCMP_ARCH_LOONGARCH64); ++ if (rc != 0) ++ goto out; ++ ++diff --git a/tests/38-basic-pfc_coverage.c b/tests/38-basic-pfc_coverage.c ++index 64a656e4..c094cd44 100644 ++--- a/tests/38-basic-pfc_coverage.c +++++ b/tests/38-basic-pfc_coverage.c ++@@ -64,6 +64,9 @@ int main(int argc, char *argv[]) ++ if (rc < 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64); +++ if (rc < 0) +++ goto out; +++ rc = seccomp_arch_add(ctx, SCMP_ARCH_LOONGARCH64); ++ if (rc < 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_MIPSEL); ++diff --git a/tests/38-basic-pfc_coverage.pfc b/tests/38-basic-pfc_coverage.pfc ++index c91f1a84..815470e6 100644 ++--- a/tests/38-basic-pfc_coverage.pfc +++++ b/tests/38-basic-pfc_coverage.pfc ++@@ -300,6 +300,103 @@ if ($arch == 3221225655) ++ action KILL; ++ # default action ++ action ALLOW; +++# filter for arch loongarch64 (3221225730) +++if ($arch == 3221225730) +++ # filter for syscall "open" (4294957130) [priority: 65535] +++ if ($syscall == 4294957130) +++ action KILL; +++ # filter for syscall "fstat" (4294957051) [priority: 65535] +++ if ($syscall == 4294957051) +++ action KILL_PROCESS; +++ # filter for syscall "exit_group" (94) [priority: 65535] +++ if ($syscall == 94) +++ action LOG; +++ # filter for syscall "exit" (93) [priority: 65535] +++ if ($syscall == 93) +++ action TRACE(1); +++ # filter for syscall "close" (57) [priority: 65535] +++ if ($syscall == 57) +++ action ERRNO(1); +++ # filter for syscall "write" (64) [priority: 65527] +++ if ($syscall == 64) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 0) +++ else +++ if ($a1.hi32 > 0) +++ else +++ if ($a1.hi32 == 0) +++ if ($a1.lo32 > 1) +++ else +++ if ($a2.hi32 > 0) +++ else +++ if ($a2.hi32 == 0) +++ if ($a2.lo32 >= 2) +++ else +++ action TRAP; +++ else +++ action TRAP; +++ else +++ if ($a2.hi32 > 0) +++ else +++ if ($a2.hi32 == 0) +++ if ($a2.lo32 >= 2) +++ else +++ action TRAP; +++ else +++ action TRAP; +++ else +++ if ($a1.hi32 > 0) +++ else +++ if ($a1.hi32 == 0) +++ if ($a1.lo32 > 1) +++ else +++ if ($a2.hi32 > 0) +++ else +++ if ($a2.hi32 == 0) +++ if ($a2.lo32 >= 2) +++ else +++ action TRAP; +++ else +++ action TRAP; +++ else +++ if ($a2.hi32 > 0) +++ else +++ if ($a2.hi32 == 0) +++ if ($a2.lo32 >= 2) +++ else +++ action TRAP; +++ else +++ action TRAP; +++ # filter for syscall "read" (63) [priority: 65525] +++ if ($syscall == 63) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 0) +++ if ($a1.hi32 > 0) +++ if ($a2.hi32 > 0) +++ if ($a3.hi32 & 0x00000000 == 0) +++ if ($a3.lo32 & 0x0000000f == 3) +++ action KILL; +++ else +++ if ($a2.hi32 == 0) +++ if ($a2.lo32 > 2) +++ if ($a3.hi32 & 0x00000000 == 0) +++ if ($a3.lo32 & 0x0000000f == 3) +++ action KILL; +++ else +++ if ($a1.hi32 == 0) +++ if ($a1.lo32 >= 1) +++ if ($a2.hi32 > 0) +++ if ($a3.hi32 & 0x00000000 == 0) +++ if ($a3.lo32 & 0x0000000f == 3) +++ action KILL; +++ else +++ if ($a2.hi32 == 0) +++ if ($a2.lo32 > 2) +++ if ($a3.hi32 & 0x00000000 == 0) +++ if ($a3.lo32 & 0x0000000f == 3) +++ action KILL; +++ # default action +++ action ALLOW; ++ # filter for arch mipsel (1073741832) ++ if ($arch == 1073741832) ++ # filter for syscall "exit_group" (4246) [priority: 65535] ++diff --git a/tests/53-sim-binary_tree.c b/tests/53-sim-binary_tree.c ++index 4aa5f136..98b9e2cb 100644 ++--- a/tests/53-sim-binary_tree.c +++++ b/tests/53-sim-binary_tree.c ++@@ -103,6 +103,9 @@ int main(int argc, char *argv[]) ++ goto out; ++ ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64); +++ if (rc != 0) +++ goto out; +++ rc = seccomp_arch_add(ctx, SCMP_ARCH_LOONGARCH64); ++ if (rc != 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_PPC64LE); ++diff --git a/tests/53-sim-binary_tree.py b/tests/53-sim-binary_tree.py ++index 8ee58cda..8cda8107 100755 ++--- a/tests/53-sim-binary_tree.py +++++ b/tests/53-sim-binary_tree.py ++@@ -72,6 +72,7 @@ def test(args): ++ ++ f.remove_arch(Arch()) ++ f.add_arch(Arch("aarch64")) +++ f.add_arch(Arch("loongarch64")) ++ f.add_arch(Arch("ppc64le")) ++ f.add_arch(Arch("x86_64")) ++ ++diff --git a/tests/53-sim-binary_tree.tests b/tests/53-sim-binary_tree.tests ++index 2ebaafd5..9813d0d6 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,+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,+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,+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 +aarch64,+loongarch64 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 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,+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,+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,+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,+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,+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,+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,+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,+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 +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 ++ ++diff --git a/tests/55-basic-pfc_binary_tree.c b/tests/55-basic-pfc_binary_tree.c ++index e364fd6b..0919f6b1 100644 ++--- a/tests/55-basic-pfc_binary_tree.c +++++ b/tests/55-basic-pfc_binary_tree.c ++@@ -87,6 +87,9 @@ int main(int argc, char *argv[]) ++ if (rc < 0) ++ goto out; ++ rc = seccomp_arch_add(ctx, SCMP_ARCH_AARCH64); +++ if (rc < 0) +++ goto out; +++ rc = seccomp_arch_add(ctx, SCMP_ARCH_LOONGARCH64); ++ if (rc < 0) ++ goto out; ++ rc = seccomp_attr_set(ctx, SCMP_FLTATR_CTL_OPTIMIZE, 2); ++diff --git a/tests/55-basic-pfc_binary_tree.pfc b/tests/55-basic-pfc_binary_tree.pfc ++index ba3244c4..33109454 100644 ++--- a/tests/55-basic-pfc_binary_tree.pfc +++++ b/tests/55-basic-pfc_binary_tree.pfc ++@@ -175,6 +175,93 @@ if ($arch == 3221225655) ++ action ERRNO(16); ++ # default action ++ action ALLOW; +++# filter for arch loongarch64 (3221225730) +++if ($arch == 3221225730) +++ if ($syscall > 62) +++ if ($syscall > 214) +++ if ($syscall > 4294957051) +++ # filter for syscall "lstat" (4294957133) [priority: 65535] +++ if ($syscall == 4294957133) +++ action ERRNO(6); +++ # filter for syscall "open" (4294957130) [priority: 65535] +++ if ($syscall == 4294957130) +++ action ERRNO(2); +++ # filter for syscall "poll" (4294957127) [priority: 65535] +++ if ($syscall == 4294957127) +++ action ERRNO(7); +++ # filter for syscall "stat" (4294957122) [priority: 65535] +++ if ($syscall == 4294957122) +++ action ERRNO(4); +++ else # ($syscall <= 4294957051) +++ # filter for syscall "fstat" (4294957051) [priority: 65533] +++ if ($syscall == 4294957051) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 103) +++ action ERRNO(5); +++ # filter for syscall "mprotect" (226) [priority: 65533] +++ if ($syscall == 226) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 105) +++ action ERRNO(10); +++ # filter for syscall "mmap" (222) [priority: 65535] +++ if ($syscall == 222) +++ action ERRNO(9); +++ # filter for syscall "munmap" (215) [priority: 65535] +++ if ($syscall == 215) +++ action ERRNO(11); +++ else # ($syscall <= 214) +++ if ($syscall > 68) +++ # filter for syscall "brk" (214) [priority: 65535] +++ if ($syscall == 214) +++ action ERRNO(12); +++ # filter for syscall "rt_sigreturn" (139) [priority: 65535] +++ if ($syscall == 139) +++ action ERRNO(15); +++ # filter for syscall "rt_sigprocmask" (135) [priority: 65535] +++ if ($syscall == 135) +++ action ERRNO(14); +++ # filter for syscall "rt_sigaction" (134) [priority: 65535] +++ if ($syscall == 134) +++ action ERRNO(13); +++ else # ($syscall <= 68) +++ # filter for syscall "pwrite64" (68) [priority: 65531] +++ if ($syscall == 68) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 107) +++ if ($a1.hi32 == 0) +++ if ($a1.lo32 == 108) +++ action ERRNO(18); +++ # filter for syscall "pread64" (67) [priority: 65533] +++ if ($syscall == 67) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 106) +++ action ERRNO(17); +++ # filter for syscall "write" (64) [priority: 65533] +++ if ($syscall == 64) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 102) +++ action ERRNO(1); +++ # filter for syscall "read" (63) [priority: 65531] +++ if ($syscall == 63) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 100) +++ if ($a1.hi32 == 0) +++ if ($a1.lo32 == 101) +++ action ERRNO(0); +++ else # ($syscall <= 62) +++ # filter for syscall "lseek" (62) [priority: 65533] +++ if ($syscall == 62) +++ if ($a0.hi32 == 0) +++ if ($a0.lo32 == 104) +++ action ERRNO(8); +++ # filter for syscall "close" (57) [priority: 65535] +++ if ($syscall == 57) +++ action ERRNO(3); +++ # filter for syscall "ioctl" (29) [priority: 65535] +++ if ($syscall == 29) +++ action ERRNO(16); +++ # default action +++ action ALLOW; ++ # invalid architecture action ++ action KILL; ++ # ++diff --git a/tests/56-basic-iterate_syscalls.c b/tests/56-basic-iterate_syscalls.c ++index 5e7ab679..b514afa1 100644 ++--- a/tests/56-basic-iterate_syscalls.c +++++ b/tests/56-basic-iterate_syscalls.c ++@@ -33,6 +33,7 @@ unsigned int arch_list[] = { ++ SCMP_ARCH_X32, ++ SCMP_ARCH_ARM, ++ 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 77a5b893..d69dd0cf 100755 ++--- a/tests/56-basic-iterate_syscalls.py +++++ b/tests/56-basic-iterate_syscalls.py ++@@ -33,6 +33,7 @@ ++ "x32", ++ "arm", ++ "aarch64", +++ "loongarch64", ++ "mipsel", ++ "mipsel64", ++ "mipsel64n32", ++diff --git a/tests/regression b/tests/regression ++index 746cea9a..32463c0a 100755 ++--- a/tests/regression +++++ b/tests/regression ++@@ -24,6 +24,7 @@ ++ GLBL_ARCH_LE_SUPPORT=" \ ++ x86 x86_64 x32 \ ++ arm aarch64 \ +++ loongarch64 \ ++ mipsel mipsel64 mipsel64n32 \ ++ ppc64le \ ++ riscv64" ++@@ -47,6 +48,7 @@ GLBL_ARCH_32B_SUPPORT=" \ ++ GLBL_ARCH_64B_SUPPORT=" \ ++ x86_64 \ ++ aarch64 \ +++ loongarch64 \ ++ mips64 \ ++ parisc64 \ ++ ppc64 \ ++@@ -801,7 +803,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|loongarch64|parisc|parisc64|ppc|ppc64|ppc64le|ppc|s390|s390x|riscv64) ++ rc_kill_process=159 ++ rc_kill=159 ++ rc_allow=160 diff --cc debian/patches/tests_Fix_wrong_syscall-error_in_test_29.patch index 0000000,0000000..2a96b65 new file mode 100644 --- /dev/null +++ b/debian/patches/tests_Fix_wrong_syscall-error_in_test_29.patch @@@ -1,0 -1,0 +1,28 @@@ ++From 1852fe3d772914d848907f9d0656747776ed3f98 Mon Sep 17 00:00:00 2001 ++From: Mayank Mrinal ++Date: Thu, 1 Jun 2023 14:53:44 +0530 ++Subject: [PATCH] tests: Fix wrong syscall-error in test 29 ++ ++29-sim-pseudo_syscall.c was using `-11001` syscall. ++Corrected it to `-10001`. ++ ++Signed-off-by: Mayank Mrinal ++Acked-by: Paul Moore ++Signed-off-by: Tom Hromatka ++--- ++ tests/29-sim-pseudo_syscall.c | 2 +- ++ 1 file changed, 1 insertion(+), 1 deletion(-) ++ ++diff --git a/tests/29-sim-pseudo_syscall.c b/tests/29-sim-pseudo_syscall.c ++index acf9c193..86734a84 100644 ++--- a/tests/29-sim-pseudo_syscall.c +++++ b/tests/29-sim-pseudo_syscall.c ++@@ -57,7 +57,7 @@ int main(int argc, char *argv[]) ++ if (rc == 0) ++ goto out; ++ /* -10001 == 4294957295 (unsigned) */ ++- rc = seccomp_rule_add_exact(ctx, SCMP_ACT_KILL, -11001, 0); +++ rc = seccomp_rule_add_exact(ctx, SCMP_ACT_KILL, -10001, 0); ++ if (rc == 0) ++ goto out; ++ diff --cc debian/patches/tests_add_fstatfs_syscall_in_the_06-sim-actions.patch index 0000000,0000000..fccbf6f new file mode 100644 --- /dev/null +++ b/debian/patches/tests_add_fstatfs_syscall_in_the_06-sim-actions.patch @@@ -1,0 -1,0 +1,39 @@@ ++From 315f7b9ec6d8992035a2c0f652949ee34843db32 Mon Sep 17 00:00:00 2001 ++From: Xiaotian Wu ++Date: Sun, 23 Oct 2022 14:36:42 +0800 ++Subject: [PATCH] tests: add fstatfs() syscall in the 06-sim-actions ++ ++Signed-off-by: Xiaotian Wu ++Acked-by: Tom Hromatka ++Signed-off-by: Paul Moore ++--- ++ tests/06-sim-actions.c | 2 +- ++ tests/06-sim-actions.tests | 2 +- ++ 2 files changed, 2 insertions(+), 2 deletions(-) ++ ++diff --git a/tests/06-sim-actions.c b/tests/06-sim-actions.c ++index da636c94..56a60fda 100644 ++--- a/tests/06-sim-actions.c +++++ b/tests/06-sim-actions.c ++@@ -64,7 +64,7 @@ int main(int argc, char *argv[]) ++ if (rc != 0) ++ goto out; ++ ++- rc = seccomp_rule_add(ctx, SCMP_ACT_KILL_PROCESS, SCMP_SYS(fstat), 0); +++ rc = seccomp_rule_add(ctx, SCMP_ACT_KILL_PROCESS, SCMP_SYS(fstatfs), 0); ++ if (rc != 0) ++ goto out; ++ ++diff --git a/tests/06-sim-actions.tests b/tests/06-sim-actions.tests ++index 76072a7a..0d1fda45 100644 ++--- a/tests/06-sim-actions.tests +++++ b/tests/06-sim-actions.tests ++@@ -12,7 +12,7 @@ test type: bpf-sim ++ 06-sim-actions all write 1 0x856B008 N N N N ERRNO(1) ++ 06-sim-actions all close 4 N N N N N TRAP ++ 06-sim-actions all openat 0 0x856B008 4 N N N TRACE(1234) ++-06-sim-actions all fstat N N N N N N KILL_PROCESS +++06-sim-actions all fstatfs 4 0x856B008 N N N N KILL_PROCESS ++ 06-sim-actions all rt_sigreturn N N N N N N LOG ++ 06-sim-actions x86 0-2 N N N N N N KILL ++ 06-sim-actions x86 7-107 N N N N N N KILL diff --cc debian/patches/tests_only_use_bogus_syscall_numbers_in_test_29.patch index 0000000,0000000..92c6d46 new file mode 100644 --- /dev/null +++ b/debian/patches/tests_only_use_bogus_syscall_numbers_in_test_29.patch @@@ -1,0 -1,0 +1,75 @@@ ++From 87876aa6ddb7cd70953f120f3d96495c2684ddda Mon Sep 17 00:00:00 2001 ++From: Paul Moore ++Date: Thu, 5 Sep 2024 17:29:13 -0400 ++Subject: [PATCH] tests: only use bogus syscall numbers in test 29 ++ ++The goal of test 29 is to test bogus negative syscall numbers, ++unfortunately it appears our choice of syscalls was not bogus on all ++the architectures we support. This commit fixes that by picking a ++syscall number well outside the pseudo-syscall/PNR range and removing ++the sysmips(2) syscall from the test so as to not cause problems ++at a later date. ++ ++Signed-off-by: Paul Moore ++Signed-off-by: Tom Hromatka ++--- ++ tests/29-sim-pseudo_syscall.c | 11 ++--------- ++ tests/29-sim-pseudo_syscall.py | 7 +------ ++ tests/29-sim-pseudo_syscall.tests | 3 +-- ++ 3 files changed, 4 insertions(+), 17 deletions(-) ++ ++diff --git a/tests/29-sim-pseudo_syscall.c b/tests/29-sim-pseudo_syscall.c ++index 86734a84..3c3405a8 100644 ++--- a/tests/29-sim-pseudo_syscall.c +++++ b/tests/29-sim-pseudo_syscall.c ++@@ -49,15 +49,8 @@ int main(int argc, char *argv[]) ++ if (rc < 0) ++ goto out; ++ ++- /* SCMP_SYS(sysmips) == 4294957190 (unsigned) */ ++- rc = seccomp_rule_add(ctx, SCMP_ACT_KILL, SCMP_SYS(sysmips), 0); ++- if (rc < 0) ++- goto out; ++- rc = seccomp_rule_add_exact(ctx, SCMP_ACT_KILL, SCMP_SYS(sysmips), 0); ++- if (rc == 0) ++- goto out; ++- /* -10001 == 4294957295 (unsigned) */ ++- rc = seccomp_rule_add_exact(ctx, SCMP_ACT_KILL, -10001, 0); +++ /* -100001 == 4294867295 (unsigned) */ +++ rc = seccomp_rule_add_exact(ctx, SCMP_ACT_KILL, -100001, 0); ++ if (rc == 0) ++ goto out; ++ ++diff --git a/tests/29-sim-pseudo_syscall.py b/tests/29-sim-pseudo_syscall.py ++index d7ab33be..74ffc61d 100755 ++--- a/tests/29-sim-pseudo_syscall.py +++++ b/tests/29-sim-pseudo_syscall.py ++@@ -32,13 +32,8 @@ def test(args): ++ f = SyscallFilter(ALLOW) ++ f.remove_arch(Arch()) ++ f.add_arch(Arch("x86")) ++- f.add_rule(KILL, "sysmips") ++ try: ++- f.add_rule_exactly(KILL, "sysmips") ++- except RuntimeError: ++- pass ++- try: ++- f.add_rule_exactly(KILL, -10001) +++ f.add_rule_exactly(KILL, -100001) ++ except RuntimeError: ++ pass ++ return f ++diff --git a/tests/29-sim-pseudo_syscall.tests b/tests/29-sim-pseudo_syscall.tests ++index 45f8dceb..779761e8 100644 ++--- a/tests/29-sim-pseudo_syscall.tests +++++ b/tests/29-sim-pseudo_syscall.tests ++@@ -9,8 +9,7 @@ test type: bpf-sim ++ ++ # Testname Arch Syscall Arg0 Arg1 Arg2 Arg3 Arg4 Arg5 Result ++ 29-sim-pseudo_syscall +x86 0-10 N N N N N N ALLOW ++-29-sim-pseudo_syscall +x86 4294957190 N N N N N N ALLOW ++-29-sim-pseudo_syscall +x86 4294957295 N N N N N N ALLOW +++29-sim-pseudo_syscall +x86 4294867295 N N N N N N ALLOW ++ ++ test type: bpf-valgrind ++ diff --cc debian/python-seccomp.install index 0000000,0000000..a71458d new file mode 100644 --- /dev/null +++ b/debian/python-seccomp.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/lib/python2.*/dist-packages/seccomp.so diff --cc debian/python3-seccomp.install index 0000000,0000000..97a45dc new file mode 100644 --- /dev/null +++ b/debian/python3-seccomp.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/lib/python3.*/site-packages/seccomp.cpython-*.so diff --cc debian/rules index 0000000,0000000..df1b96a new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,37 @@@ ++#!/usr/bin/make -f ++# -*- makefile -*- ++ ++# Uncomment this to turn on verbose mode. ++#export DH_VERBOSE=1 ++ ++# Enable verbose build details. ++export V=1 ++ ++include /usr/share/dpkg/architecture.mk ++ ++%: ++ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),) ++ dh $@ --with python3 ++else ++ dh $@ ++endif ++ ++ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),) ++ ++override_dh_auto_install: ++ dh_auto_install ++ for pyver in `py3versions -s`; do \ ++ set -e; \ ++ if python3 -c "pyver=tuple(map(int, '$$pyver'[6:].split('.'))); exit(0 if pyver >= (3,8) else 1)"; then \ ++ export _PYTHON_SYSCONFIGDATA_NAME='_sysconfigdata__${DEB_HOST_ARCH_OS}_${DEB_HOST_MULTIARCH}'; \ ++ else \ ++ export _PYTHON_SYSCONFIGDATA_NAME='_sysconfigdata_m_${DEB_HOST_ARCH_OS}_${DEB_HOST_MULTIARCH}'; \ ++ fi; \ ++ dh_auto_configure -- --enable-python PYTHON=$$pyver; \ ++ dh_auto_install --sourcedirectory=src/python -- PYTHON=$$pyver; \ ++ done ++endif ++ ++override_dh_auto_clean: ++ dh_auto_clean ++ rm -f regression.out diff --cc debian/salsa-ci.yml index 0000000,0000000..3fa15ad new file mode 100644 --- /dev/null +++ b/debian/salsa-ci.yml @@@ -1,0 -1,0 +1,14 @@@ ++include: ++ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml ++ ++variables: ++ SALSA_CI_ENABLE_BUILD_PACKAGE_PROFILES: 1 ++ # job doesn't seem to be stable ++ SALSA_CI_DISABLE_CROSSBUILD_ARM64: 1 ++ ++test-build-profiles: ++ extends: .test-build-package-profiles ++ parallel: ++ matrix: ++ - BUILD_PROFILES: nocheck ++ - BUILD_PROFILES: nopython diff --cc debian/seccomp.install index 0000000,0000000..1df36c6 new file mode 100644 --- /dev/null +++ b/debian/seccomp.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/bin/* diff --cc debian/seccomp.manpages index 0000000,0000000..5ea05fe new file mode 100644 --- /dev/null +++ b/debian/seccomp.manpages @@@ -1,0 -1,0 +1,1 @@@ ++debian/tmp/usr/share/man/man1/* diff --cc debian/source/format index 0000000,0000000..163aaf8 new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/tests/common index 0000000,0000000..e02e8db new file mode 100644 --- /dev/null +++ b/debian/tests/common @@@ -1,0 -1,0 +1,12 @@@ ++SRCDIR="$(pwd)" ++ ++mkdir "$AUTOPKGTEST_TMP/tests" "$AUTOPKGTEST_TMP/tools" ++cp -a tests/. "$AUTOPKGTEST_TMP/tests/" ++ ++cd "$AUTOPKGTEST_TMP/tests" ++ ++# build tools needed for tests ++for tool in scmp_api_level scmp_arch_detect scmp_sys_resolver; do ++ echo "Building $tool ..." ++ gcc -O2 -g "$SRCDIR/tools/$tool.c" "$SRCDIR/tools/util.c" -lseccomp -o ../tools/$tool ++done diff --cc debian/tests/control index 0000000,0000000..3d2c4ba new file mode 100644 --- /dev/null +++ b/debian/tests/control @@@ -1,0 -1,0 +1,7 @@@ ++Tests: testsuite-live ++Depends: libseccomp-dev, build-essential ++Restrictions: isolation-machine ++ ++Tests: testsuite-live-python3 ++Depends: libseccomp-dev, build-essential, python3-seccomp ++Restrictions: isolation-machine, allow-stderr diff --cc debian/tests/testsuite-live index 0000000,0000000..bbf20d0 new file mode 100644 --- /dev/null +++ b/debian/tests/testsuite-live @@@ -1,0 -1,0 +1,17 @@@ ++#!/bin/sh ++ ++set -eu ++ ++. debian/tests/common ++ ++# manually build necessary files against the installed libseccomp ++ ++# build live tests ++for filename in *-live-*.tests; do ++ testname=$(echo "$filename" | cut -f 1 -d '.') ++ echo "Building $testname ..." ++ gcc -O2 -g "${testname}.c" util.c -pthread -lseccomp -o "$testname" ++done ++ ++echo "Running test suite ..." ++./regression -T live diff --cc debian/tests/testsuite-live-python3 index 0000000,0000000..f4fb094 new file mode 100644 --- /dev/null +++ b/debian/tests/testsuite-live-python3 @@@ -1,0 -1,0 +1,13 @@@ ++#!/bin/sh ++ ++set -eu ++ ++. debian/tests/common ++ ++# make sure "python" points to python3 as this is not configurable ++# in the regression script ++mkdir python3env ++ln -s /usr/bin/python3 python3env/python ++ ++echo "Running test suite ..." ++PATH="$(pwd)/python3env:$PATH" ./regression -T live -m python diff --cc debian/upstream/metadata index 0000000,0000000..0fef70b new file mode 100644 --- /dev/null +++ b/debian/upstream/metadata @@@ -1,0 -1,0 +1,4 @@@ ++Bug-Database: https://github.com/seccomp/libseccomp/issues ++Bug-Submit: https://github.com/seccomp/libseccomp/issues/new ++Repository: https://github.com/seccomp/libseccomp.git ++Repository-Browse: https://github.com/seccomp/libseccomp diff --cc debian/upstream/signing-key.asc index 0000000,0000000..5ddf435 new file mode 100644 --- /dev/null +++ b/debian/upstream/signing-key.asc @@@ -1,0 -1,0 +1,192 @@@ ++-----BEGIN PGP PUBLIC KEY BLOCK----- ++ ++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 ++lUtY1AVxx4LtnS16GX+OVCybWzbK1uqLrfo= ++=9JXr ++-----END PGP PUBLIC KEY BLOCK----- diff --cc debian/watch index 0000000,0000000..7db2017 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,5 @@@ ++version=4 ++opts="searchmode=plain,\ ++pgpsigurlmangle=s/$/.asc/" \ ++https://api.github.com/repos/seccomp/libseccomp/releases?per_page=50 \ ++https://github.com/seccomp/libseccomp/releases/download/[^/]+/libseccomp-@ANY_VERSION@@ARCHIVE_EXT@"