RHEL 9.0.0 Alpha bootstrap

The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/glibc#c626367cc1dea35a90c9065c6af70e8967c23f26
This commit is contained in:
Troy Dawson 2020-11-16 13:04:25 -08:00
parent e30b42e7e1
commit 28637353c0
2 changed files with 4 additions and 27 deletions

View File

@ -1,25 +0,0 @@
With older systemd-nspawn the faccessat2 syscall was denied but
instead of returning ENOSYS it returned EPERM. This has since
been corrected in upstream systemd-nsapwn, but with older builders
that may have older nspawn the Fedora Rawhide glibc should fall
back to faccessat when it sees ENOSYS *or* EPERM. This is a
Fedora Rawhide-only patch that should be removed before the next
release.
diff --git a/sysdeps/unix/sysv/linux/faccessat.c b/sysdeps/unix/sysv/linux/faccessat.c
index 56cb6dcc8b4d58d3..5de75032bbc93a2c 100644
--- a/sysdeps/unix/sysv/linux/faccessat.c
+++ b/sysdeps/unix/sysv/linux/faccessat.c
@@ -34,7 +34,11 @@ faccessat (int fd, const char *file, int mode, int flag)
#if __ASSUME_FACCESSAT2
return ret;
#else
- if (ret == 0 || errno != ENOSYS)
+ /* Fedora-specific workaround:
+ As a workround for a broken systemd-nspawn that returns
+ EPERM when a syscall is not allowed instead of ENOSYS
+ we must check for EPERM here and fall back to faccessat. */
+ if (ret == 0 || !(errno == ENOSYS || errno == EPERM))
return ret;
if (flag & ~(AT_SYMLINK_NOFOLLOW | AT_EACCESS))

View File

@ -100,7 +100,7 @@
Summary: The GNU libc libraries Summary: The GNU libc libraries
Name: glibc Name: glibc
Version: %{glibcversion} Version: %{glibcversion}
Release: 15%{?dist} Release: 16%{?dist}
# In general, GPLv2+ is used by programs, LGPLv2+ is used for # In general, GPLv2+ is used by programs, LGPLv2+ is used for
# libraries. # libraries.
@ -161,7 +161,6 @@ Patch23: glibc-python3.patch
Patch29: glibc-fedora-nsswitch.patch Patch29: glibc-fedora-nsswitch.patch
Patch30: glibc-deprecated-selinux-makedb.patch Patch30: glibc-deprecated-selinux-makedb.patch
Patch31: glibc-deprecated-selinux-nscd.patch Patch31: glibc-deprecated-selinux-nscd.patch
Patch32: glibc-rhbz1869030-faccessat2-eperm.patch
Patch33: glibc-revert-fxstat-compat.patch Patch33: glibc-revert-fxstat-compat.patch
Patch34: glibc-revert-mknod-compat.patch Patch34: glibc-revert-mknod-compat.patch
@ -2270,6 +2269,9 @@ fi
%files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared
%changelog %changelog
* Tue Nov 10 2020 Carlos O'Donell <carlos@redhat.com> - 2.32.9000-16
- Remove the work around for systemd-nspawn (#1869030).
* Mon Nov 09 2020 DJ Delorie <dj@redhat.com> - 2.32.9000-15 * Mon Nov 09 2020 DJ Delorie <dj@redhat.com> - 2.32.9000-15
- Auto-sync with upstream branch master, - Auto-sync with upstream branch master,
commit 75a193b7611bade31a150dfcc528b973e3d46231. commit 75a193b7611bade31a150dfcc528b973e3d46231.