diff --git a/glibc-revert-27390476.patch b/glibc-revert-27390476.patch new file mode 100644 index 0000000..62d7391 --- /dev/null +++ b/glibc-revert-27390476.patch @@ -0,0 +1,46 @@ +diff -U0 glibc-2.14/ChangeLog.orig glibc-2.14/ChangeLog +diff -up glibc-2.14/sysdeps/s390/s390-64/utf16-utf32-z9.c.orig glibc-2.14/sysdeps/s390/s390-64/utf16-utf32-z9.c +--- glibc-2.14/sysdeps/s390/s390-64/utf16-utf32-z9.c.orig 2011-05-31 06:12:33.000000000 +0200 ++++ glibc-2.14/sysdeps/s390/s390-64/utf16-utf32-z9.c 2011-06-09 14:44:52.000000000 +0200 +@@ -169,10 +169,7 @@ gconv_end (struct __gconv_step *data) + register unsigned long long outlen asm("11") = outend - outptr; \ + uint64_t cc = 0; \ + \ +- asm volatile (".machine push \n\t" \ +- ".machine \"z9-109\" \n\t" \ +- "0: " INSTRUCTION " \n\t" \ +- ".machine pop \n\t" \ ++ asm volatile ("0: " INSTRUCTION " \n\t" \ + " jo 0b \n\t" \ + " ipm %2 \n" \ + : "+a" (pOutput), "+a" (pInput), "+d" (cc), \ +diff -up glibc-2.14/sysdeps/s390/s390-64/utf8-utf16-z9.c.orig glibc-2.14/sysdeps/s390/s390-64/utf8-utf16-z9.c +--- glibc-2.14/sysdeps/s390/s390-64/utf8-utf16-z9.c.orig 2011-05-31 06:12:33.000000000 +0200 ++++ glibc-2.14/sysdeps/s390/s390-64/utf8-utf16-z9.c 2011-06-09 14:44:55.000000000 +0200 +@@ -151,10 +151,7 @@ gconv_end (struct __gconv_step *data) + register unsigned long long outlen asm("11") = outend - outptr; \ + uint64_t cc = 0; \ + \ +- asm volatile (".machine push \n\t" \ +- ".machine \"z9-109\" \n\t" \ +- "0: " INSTRUCTION " \n\t" \ +- ".machine pop \n\t" \ ++ asm volatile ("0: " INSTRUCTION " \n\t" \ + " jo 0b \n\t" \ + " ipm %2 \n" \ + : "+a" (pOutput), "+a" (pInput), "+d" (cc), \ +diff -up glibc-2.14/sysdeps/s390/s390-64/utf8-utf32-z9.c.orig glibc-2.14/sysdeps/s390/s390-64/utf8-utf32-z9.c +--- glibc-2.14/sysdeps/s390/s390-64/utf8-utf32-z9.c.orig 2011-05-31 06:12:33.000000000 +0200 ++++ glibc-2.14/sysdeps/s390/s390-64/utf8-utf32-z9.c 2011-06-09 14:44:55.000000000 +0200 +@@ -155,10 +155,7 @@ gconv_end (struct __gconv_step *data) + register unsigned long long outlen asm("11") = outend - outptr; \ + uint64_t cc = 0; \ + \ +- asm volatile (".machine push \n\t" \ +- ".machine \"z9-109\" \n\t" \ +- "0: " INSTRUCTION " \n\t" \ +- ".machine pop \n\t" \ ++ asm volatile ("0: " INSTRUCTION " \n\t" \ + " jo 0b \n\t" \ + " ipm %2 \n" \ + : "+a" (pOutput), "+a" (pInput), "+d" (cc), \ diff --git a/glibc.spec b/glibc.spec index b8fc8a5..376614a 100644 --- a/glibc.spec +++ b/glibc.spec @@ -27,7 +27,7 @@ Summary: The GNU libc libraries Name: glibc Version: %{glibcversion} -Release: 2 +Release: 3 # GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries. # Things that are linked directly into dynamically linked programs # and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional @@ -41,6 +41,8 @@ Source1: %{?glibc_release_url}%{glibcportsdir}.tar.xz Source2: %{glibcsrcdir}-fedora.tar.xz Patch0: %{name}-fedora.patch Patch1: %{name}-ia64-lib64.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=711330 +Patch2: %{name}-revert-27390476.patch Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Obsoletes: glibc-profile < 2.4 Provides: ldconfig @@ -257,6 +259,7 @@ rm -rf %{glibcportsdir} %patch1 -p1 %endif %endif +%patch2 -p1 # A lot of programs still misuse memcpy when they have to use # memmove. The memcpy implementation below is not tolerant at @@ -1051,6 +1054,9 @@ rm -f *.filelist* %endif %changelog +* Thu Jun 9 2011 Dan HorĂ¡k - 2.14-3 +- revert glibc commit 27390476 as it requires binutils >= 2.21.52.0.1 (#711330) + * Fri Jun 3 2011 Andreas Schwab - 2.14-2 - Revert "Handle DNS server failures in case of AF_UNSPEC lookups correctly" (#710279)