Index: sys/compat/linux/linux_stats.c =================================================================== --- sys/compat/linux/linux_stats.c +++ sys/compat/linux/linux_stats.c @@ -661,6 +661,16 @@ int error, dfd, flag; struct stat buf; + if (args->flag & LINUX_AT_EMPTY_PATH) { + if (args->dfd == AT_FDCWD) { + linux_msg(td, "unsupported fstatat with AT_FDCWD"); + return (EBADF); + } + error = kern_fstat(td, args->dfd, &buf); + translate_fd_major_minor(td, args->dfd, &buf); + goto out; + } + if (args->flag & ~LINUX_AT_SYMLINK_NOFOLLOW) return (EINVAL); flag = (args->flag & LINUX_AT_SYMLINK_NOFOLLOW) ? @@ -675,6 +685,7 @@ error = linux_kern_statat(td, flag, dfd, path, UIO_SYSSPACE, &buf); LFREEPATH(path); } +out: if (error == 0) error = newstat_copyout(&buf, args->statbuf);