Skip to content

Commit d96ad9e

Browse files
committed
missing-syscall: add __NR_openat2
1 parent 0c718b1 commit d96ad9e

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed

src/basic/missing_syscall_def.h

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -700,6 +700,72 @@ assert_cc(__NR_open_tree == systemd_NR_open_tree);
700700
# endif
701701
#endif
702702

703+
#ifndef __IGNORE_openat2
704+
# if defined(__aarch64__)
705+
# define systemd_NR_openat2 437
706+
# elif defined(__alpha__)
707+
# define systemd_NR_openat2 547
708+
# elif defined(__arc__) || defined(__tilegx__)
709+
# define systemd_NR_openat2 437
710+
# elif defined(__arm__)
711+
# define systemd_NR_openat2 437
712+
# elif defined(__i386__)
713+
# define systemd_NR_openat2 437
714+
# elif defined(__ia64__)
715+
# define systemd_NR_openat2 1461
716+
# elif defined(__loongarch64)
717+
# define systemd_NR_openat2 437
718+
# elif defined(__m68k__)
719+
# define systemd_NR_openat2 437
720+
# elif defined(_MIPS_SIM)
721+
# if _MIPS_SIM == _MIPS_SIM_ABI32
722+
# define systemd_NR_openat2 4437
723+
# elif _MIPS_SIM == _MIPS_SIM_NABI32
724+
# define systemd_NR_openat2 6437
725+
# elif _MIPS_SIM == _MIPS_SIM_ABI64
726+
# define systemd_NR_openat2 5437
727+
# else
728+
# error "Unknown MIPS ABI"
729+
# endif
730+
# elif defined(__powerpc__)
731+
# define systemd_NR_openat2 437
732+
# elif defined(__riscv)
733+
# if __riscv_xlen == 32
734+
# define systemd_NR_openat2 437
735+
# elif __riscv_xlen == 64
736+
# define systemd_NR_openat2 437
737+
# else
738+
# error "Unknown RISC-V ABI"
739+
# endif
740+
# elif defined(__s390__)
741+
# define systemd_NR_openat2 437
742+
# elif defined(__sparc__)
743+
# define systemd_NR_openat2 437
744+
# elif defined(__x86_64__)
745+
# if defined(__ILP32__)
746+
# define systemd_NR_openat2 (437 | /* __X32_SYSCALL_BIT */ 0x40000000)
747+
# else
748+
# define systemd_NR_openat2 437
749+
# endif
750+
# elif !defined(missing_arch_template)
751+
# warning "openat2() syscall number is unknown for your architecture"
752+
# endif
753+
754+
/* may be an (invalid) negative number due to libseccomp, see PR 13319 */
755+
# if defined __NR_openat2 && __NR_openat2 >= 0
756+
# if defined systemd_NR_openat2
757+
assert_cc(__NR_openat2 == systemd_NR_openat2);
758+
# endif
759+
# else
760+
# if defined __NR_openat2
761+
# undef __NR_openat2
762+
# endif
763+
# if defined systemd_NR_openat2 && systemd_NR_openat2 >= 0
764+
# define __NR_openat2 systemd_NR_openat2
765+
# endif
766+
# endif
767+
#endif
768+
703769
#ifndef __IGNORE_pidfd_open
704770
# if defined(__aarch64__)
705771
# define systemd_NR_pidfd_open 434

src/basic/missing_syscalls.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
'move_mount',
1717
'name_to_handle_at',
1818
'open_tree',
19+
'openat2',
1920
'pidfd_open',
2021
'pidfd_send_signal',
2122
'pkey_mprotect',

0 commit comments

Comments
 (0)