commit: 6a6a6a6c9680e5868544887a7ab4d141833abfb6 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org> AuthorDate: Mon Jul 17 13:43:51 2023 +0000 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org> CommitDate: Mon Jul 17 13:43:51 2023 +0000 URL: https://gitweb.gentoo.org/proj/sandbox.git/commit/?id=6a6a6a6c
sb_exists: drop use of faccessat faccessat appears to perform quite poorly under certain conditions. Go back to using fstatat until this can be debugged. Bug: https://bugs.gentoo.org/910273 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org> libsbutil/sb_exists.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/libsbutil/sb_exists.c b/libsbutil/sb_exists.c index 9ec7730..d34f0cc 100644 --- a/libsbutil/sb_exists.c +++ b/libsbutil/sb_exists.c @@ -10,15 +10,5 @@ int sb_exists(int dirfd, const char *pathname, int flags) { struct stat64 buf; - - if (faccessat(dirfd, pathname, F_OK, flags) == 0) - return 0; - - /* musl's faccessat gives EINVAL when the kernel does not support - * faccessat2 and AT_SYMLINK_NOFOLLOW is set. - * https://www.openwall.com/lists/musl/2023/06/19/1 */ - if (errno != EINVAL) - return -1; - return fstatat64(dirfd, pathname, &buf, flags); }