If we run case on old kernel that doesn't support mount_setattr and then fail on our own function before call is_setgid/is_setuid function to reset errno, run_test will print "Function not implement" error. We also check whether system support user namespace, so reset errno to zero after userns check. Acked-by: Christian Brauner (Microsoft) <brauner@xxxxxxxxxx> Signed-off-by: Yang Xu <xuyang2018.jy@xxxxxxxxxxx> --- v3->v4: move this reset step after sys_has_usersn() src/idmapped-mounts/idmapped-mounts.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/idmapped-mounts/idmapped-mounts.c b/src/idmapped-mounts/idmapped-mounts.c index ce3f73be..2e94bf71 100644 --- a/src/idmapped-mounts/idmapped-mounts.c +++ b/src/idmapped-mounts/idmapped-mounts.c @@ -14232,6 +14232,8 @@ int main(int argc, char *argv[]) exit(EXIT_SUCCESS); } t_has_userns = sys_has_userns(); + /* don't copy ENOSYS errno to child process on older kernel */ + errno = 0; stash_overflowuid(); stash_overflowgid(); -- 2.31.1