diff -urw qemu-7.1.0/linux-user/syscall.c qemu-master-20221018/linux-user/syscall.c --- qemu-7.1.0/linux-user/syscall.c 2022-10-18 00:00:49.305760523 +0200 +++ qemu-master-20221018/linux-user/syscall.c 2022-10-17 23:21:22.000000000 +0200 @@ -9098,6 +9110,19 @@ unlock_user(p, arg2, 0); return ret; #endif +#if defined(TARGET_NR_faccessat2) && (defined(__NR_faccessat2) || defined(__NR_faccessat)) + case TARGET_NR_faccessat2: + if (!(p = lock_user_string(arg2))) { + return -TARGET_EFAULT; + } + #if defined(__NR_faccessat2) + ret = get_errno(syscall(__NR_faccessat2, arg1, p, arg3, arg4)); + #else + ret = get_errno(faccessat(arg1, p, arg3, 0)); + #endif + unlock_user(p, arg2, 0); + return ret; +#endif #ifdef TARGET_NR_nice /* not on alpha */ case TARGET_NR_nice: return get_errno(nice(arg1));