Your message dated Fri, 10 Oct 2014 07:47:07 +0000 with message-id <E1XcUup-0004WL-Gi@franck.debian.org> and subject line Bug#756343: fixed in eglibc 2.13-38+deb7u5 has caused the Debian Bug report #756343, regarding Fix gethostbyname() sending data on random file descriptors in wheezy, already done in jessie to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 756343: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=756343 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: submit@bugs.debian.org
- Subject: Fix gethostbyname() sending data on random file descriptors in wheezy, already done in jessie
- From: Marcus Ewert <mewert@google.com>
- Date: Mon, 28 Jul 2014 16:43:37 -0700
- Message-id: <CAAwhOazMwpWq7tnWh259UDKXoPc6CX86hfV5WvD93RofgzY=1g@mail.gmail.com>
Package: libc6Version: 2.13-38+deb7u1Severity: normalHello,On test systems running stress workloads we were regularly encountering a bugin gethostbyname that is fixed in libc6 in jessie. For completeness I'veincluded the entire repro/investigation process; however, we are fairly sure thebug is the same as debian bug #722075. I'm writing to inquire if this bugfix canbe backported to wheezy (stable).We encountered this bug on fractional core VMs running workloads that stressdisk, cpu, and networking. As part of that testing we make many concurrent HTTPrequest in python, the relevant code being similar to:> def GetURL(**kwargs):> url = "" href="http://www.example.com/">http://www.example.com/'> request = urllib2.Request(url)> return urllib2.urlopen(request, **kwargs).read()>> def HammerGetHostByID():> while True:> try:> GetURL(timeout=1)> except:> pass>> for _ in xrange(10):> thread = threading.Thread(target=HammerGetHostByID)> thread.start()Running a workload like this in 500 VMs running wheezy would yield O(8) failuresover 24 hours with the following output:*** glibc detected *** /usr/bin/python: double free or corruption (out)Digging a little deeper with a debugger we found that whenever these were hit,the stack would contain _nss_dns_gethostbyname4_r and have garbage stack framesabove that. The gethostbyname() call most likely comes from the above urlopen.Given this observation, we suspected a connection to debian bug #722075, andattempted the following patch to libc6:diff -rupN eglibc-2.13/resolv/res_send.c eglibc-2.13-mod/resolv/res_send.c--- eglibc-2.13/resolv/res_send.c 2010-03-26 14:08:35.000000000 -0700+++ eglibc-2.13-mod/resolv/res_send.c 2014-07-02 10:23:28.521088097 -0700@@ -1330,6 +1330,7 @@ send_dg(res_state statp,retval = reopen (statp, terrno, ns);if (retval <= 0)return retval;+ pfd[0].fd = EXT(statp).nssocks[ns];}}goto wait;With this single-line patch we no longer hit the 'double free or corruption'message even when running 100 VMs for over 5 days. I extracted the above codemodified the diff to fit on 2.13-38+deb7u1.If a fix similar to this could be included in wheezy stable at some point itwould be much appreciated.We were running kernel: Debian 3.14.5-1~bpo70+1, libc6: 2.13-38+deb7u1Thanks,Marcus Ewert
--- End Message ---
--- Begin Message ---
- To: 756343-close@bugs.debian.org
- Subject: Bug#756343: fixed in eglibc 2.13-38+deb7u5
- From: Aurelien Jarno <aurel32@debian.org>
- Date: Fri, 10 Oct 2014 07:47:07 +0000
- Message-id: <E1XcUup-0004WL-Gi@franck.debian.org>
Source: eglibc Source-Version: 2.13-38+deb7u5 We believe that the bug you reported is fixed in the latest version of eglibc, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 756343@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Aurelien Jarno <aurel32@debian.org> (supplier of updated eglibc package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@ftp-master.debian.org) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 1.8 Date: Wed, 08 Oct 2014 22:50:01 +0200 Source: eglibc Binary: libc-bin libc-dev-bin glibc-doc eglibc-source locales locales-all nscd multiarch-support libc6 libc6-dev libc6-dbg libc6-prof libc6-pic libc6-udeb libc6.1 libc6.1-dev libc6.1-dbg libc6.1-prof libc6.1-pic libc6.1-udeb libc0.3 libc0.3-dev libc0.3-dbg libc0.3-prof libc0.3-pic libc0.3-udeb libc0.1 libc0.1-dev libc0.1-dbg libc0.1-prof libc0.1-pic libc0.1-udeb libc6-i386 libc6-dev-i386 libc6-sparc64 libc6-dev-sparc64 libc6-s390 libc6-dev-s390 libc6-s390x libc6-dev-s390x libc6-amd64 libc6-dev-amd64 libc6-powerpc libc6-dev-powerpc libc6-ppc64 libc6-dev-ppc64 libc6-mipsn32 libc6-dev-mipsn32 libc6-mips64 libc6-dev-mips64 libc0.1-i386 libc0.1-dev-i386 libc6-i686 libc6-xen libc0.1-i686 libc0.3-i686 libc0.3-xen libc6.1-alphaev67 libc6-loongson2f libnss-dns-udeb libnss-files-udeb Architecture: source all amd64 Version: 2.13-38+deb7u5 Distribution: wheezy Urgency: medium Maintainer: Aurelien Jarno <aurel32@debian.org> Changed-By: Aurelien Jarno <aurel32@debian.org> Description: eglibc-source - Embedded GNU C Library: sources glibc-doc - Embedded GNU C Library: Documentation libc-bin - Embedded GNU C Library: Binaries libc-dev-bin - Embedded GNU C Library: Development binaries libc0.1 - Embedded GNU C Library: Shared libraries libc0.1-dbg - Embedded GNU C Library: detached debugging symbols libc0.1-dev - Embedded GNU C Library: Development Libraries and Header Files libc0.1-dev-i386 - Embedded GNU C Library: 32bit development libraries for AMD64 libc0.1-i386 - Embedded GNU C Library: 32bit shared libraries for AMD64 libc0.1-i686 - Embedded GNU C Library: Shared libraries [i686 optimized] libc0.1-pic - Embedded GNU C Library: PIC archive library libc0.1-prof - Embedded GNU C Library: Profiling Libraries libc0.1-udeb - Embedded GNU C Library: Shared libraries - udeb (udeb) libc0.3 - Embedded GNU C Library: Shared libraries libc0.3-dbg - Embedded GNU C Library: detached debugging symbols libc0.3-dev - Embedded GNU C Library: Development Libraries and Header Files libc0.3-i686 - Embedded GNU C Library: Shared libraries [i686 optimized] libc0.3-pic - Embedded GNU C Library: PIC archive library libc0.3-prof - Embedded GNU C Library: Profiling Libraries libc0.3-udeb - Embedded GNU C Library: Shared libraries - udeb (udeb) libc0.3-xen - Embedded GNU C Library: Shared libraries [Xen version] libc6 - Embedded GNU C Library: Shared libraries libc6-amd64 - Embedded GNU C Library: 64bit Shared libraries for AMD64 libc6-dbg - Embedded GNU C Library: detached debugging symbols libc6-dev - Embedded GNU C Library: Development Libraries and Header Files libc6-dev-amd64 - Embedded GNU C Library: 64bit Development Libraries for AMD64 libc6-dev-i386 - Embedded GNU C Library: 32-bit development libraries for AMD64 libc6-dev-mips64 - Embedded GNU C Library: 64bit Development Libraries for MIPS64 libc6-dev-mipsn32 - Embedded GNU C Library: n32 Development Libraries for MIPS64 libc6-dev-powerpc - Embedded GNU C Library: 32bit powerpc development libraries for p libc6-dev-ppc64 - Embedded GNU C Library: 64bit Development Libraries for PowerPC64 libc6-dev-s390 - Embedded GNU C Library: 32bit Development Libraries for IBM zSeri libc6-dev-s390x - Embedded GNU C Library: 64bit Development Libraries for IBM zSeri libc6-dev-sparc64 - Embedded GNU C Library: 64bit Development Libraries for UltraSPAR libc6-i386 - Embedded GNU C Library: 32-bit shared libraries for AMD64 libc6-i686 - Embedded GNU C Library: Shared libraries [i686 optimized] libc6-loongson2f - Embedded GNU C Library: Shared libraries (Loongson 2F optimized) libc6-mips64 - Embedded GNU C Library: 64bit Shared libraries for MIPS64 libc6-mipsn32 - Embedded GNU C Library: n32 Shared libraries for MIPS64 libc6-pic - Embedded GNU C Library: PIC archive library libc6-powerpc - Embedded GNU C Library: 32bit powerpc shared libraries for ppc64 libc6-ppc64 - Embedded GNU C Library: 64bit Shared libraries for PowerPC64 libc6-prof - Embedded GNU C Library: Profiling Libraries libc6-s390 - Embedded GNU C Library: 32bit Shared libraries for IBM zSeries libc6-s390x - Embedded GNU C Library: 64bit Shared libraries for IBM zSeries libc6-sparc64 - Embedded GNU C Library: 64bit Shared libraries for UltraSPARC libc6-udeb - Embedded GNU C Library: Shared libraries - udeb (udeb) libc6-xen - Embedded GNU C Library: Shared libraries [Xen version] libc6.1 - Embedded GNU C Library: Shared libraries libc6.1-alphaev67 - Embedded GNU C Library: Shared libraries (EV67 optimized) libc6.1-dbg - Embedded GNU C Library: detached debugging symbols libc6.1-dev - Embedded GNU C Library: Development Libraries and Header Files libc6.1-pic - Embedded GNU C Library: PIC archive library libc6.1-prof - Embedded GNU C Library: Profiling Libraries libc6.1-udeb - Embedded GNU C Library: Shared libraries - udeb (udeb) libnss-dns-udeb - Embedded GNU C Library: NSS helper for DNS - udeb (udeb) libnss-files-udeb - Embedded GNU C Library: NSS helper for files - udeb (udeb) locales - Embedded GNU C Library: National Language (locale) data [support] locales-all - Embedded GNU C Library: Precompiled locale data multiarch-support - Transitional package to ensure multiarch compatibility nscd - Embedded GNU C Library: Name Service Cache Daemon Closes: 722075 742925 756343 763559 Changes: eglibc (2.13-38+deb7u5) wheezy; urgency=medium . * debian/patches/any/cvs-resolv-reuse-fd.diff: new patch from upstream to fix invalid file descriptor reuse while sending DNS query. Closes: #722075, #756343. * debian/patches/any/cvs-CVE-2013-4357.diff: new patch from upstream to fix stack overflow issues. Closes: #742925. * debian/patches/any/submitted-CVE-2014-0475.diff: update from upstream to fix a localplt regression introduced in version 2.13-38+deb7u3. * patches/any/cvs-dlopen-tls-memleak.patch: new patch from upstream to fix a memory leak with dlopen() and thread-local storage variables. Closes: #763559. Checksums-Sha1: 3b071c37efb0ef26a1c009d5c950773388cf1028 5364 eglibc_2.13-38+deb7u5.dsc 21266537202bf101cf0bb977ec188be13c9fc5a4 2014306 eglibc_2.13-38+deb7u5.diff.gz cedf75d5a3c2d94a5246cc4f53817f497d710b60 1897574 glibc-doc_2.13-38+deb7u5_all.deb 2ec12c7de058d90b2757f59ed35c07c827e23269 13422420 eglibc-source_2.13-38+deb7u5_all.deb 6822b2b70e32c4f90052aecdaa4b331736152fe9 5718992 locales_2.13-38+deb7u5_all.deb 9fdbcaa61c2e18cebb8c411b043a725c492f41dd 4347686 libc6_2.13-38+deb7u5_amd64.deb e45dfa63b57da08207f11ea30dccd08f71b2893d 2664214 libc6-dev_2.13-38+deb7u5_amd64.deb a9e9d6fa91b96a8cda3c034ee2364773462ed276 2105778 libc6-prof_2.13-38+deb7u5_amd64.deb bcdad472058cc6a0e58fc04236853aa8396165db 1612832 libc6-pic_2.13-38+deb7u5_amd64.deb d910de65694b6701a82318d74b1bb48c8601dbec 1272300 libc-bin_2.13-38+deb7u5_amd64.deb 2de48f2fff9764c84f2b030dd8290011633f8f6b 226854 libc-dev-bin_2.13-38+deb7u5_amd64.deb b7de58d32e81e29ade4d3ea84c33e1a764a92893 150972 multiarch-support_2.13-38+deb7u5_amd64.deb b12e0ca16abe07d99d53a9990e3231ee8c887aa9 3312880 locales-all_2.13-38+deb7u5_amd64.deb 117a2fdf7c04b0b20d66fd1552edd7e8b398a12f 4025818 libc6-i386_2.13-38+deb7u5_amd64.deb 1b472cd44f52085cef85d5a246e3b6b0a401997b 1593106 libc6-dev-i386_2.13-38+deb7u5_amd64.deb 5e70968d77870af70cdc6e36e98141a26657843d 215408 nscd_2.13-38+deb7u5_amd64.deb be63622cf5b3dec175e06883266b5ee3187218b8 2594166 libc6-dbg_2.13-38+deb7u5_amd64.deb 1623b81e2a327e5feb92abb5be03a5bd416471cf 939086 libc6-udeb_2.13-38+deb7u5_amd64.udeb 3b4eb4918ea3199d56869b6a463d3ac9d3b940f3 10188 libnss-dns-udeb_2.13-38+deb7u5_amd64.udeb d24ebbb4ad38de0f80179540ddf0efb0fb7c2ff0 16146 libnss-files-udeb_2.13-38+deb7u5_amd64.udeb Checksums-Sha256: 101461435234abb1f07471fe310ccbb686e790cfcb05e7489012ce238371b329 5364 eglibc_2.13-38+deb7u5.dsc 6174d8c5ac99459ff2e0438db308bcf08b8715e823dd9a517f2e555996b2008e 2014306 eglibc_2.13-38+deb7u5.diff.gz a76461adae681bb0bf665ec646fe0532664765a6927e7cb49e9898490edf6e84 1897574 glibc-doc_2.13-38+deb7u5_all.deb 63d4d0017b524cdf061f1fcc7ff52a00f590b71a609b5cf390beeabcf842b583 13422420 eglibc-source_2.13-38+deb7u5_all.deb 5348fac24e0d37813e918449ce5329e79ffa21a6defc3f280054bb9025c40c2f 5718992 locales_2.13-38+deb7u5_all.deb b370c15e054e3243baa29a079ade3a8709d18c3df5aa2e45369f299890eae40f 4347686 libc6_2.13-38+deb7u5_amd64.deb 72dd7e254deb49a23d2e1e7705e4b3e0beba2abd14ab2d6a3a1522df98e7aad2 2664214 libc6-dev_2.13-38+deb7u5_amd64.deb 8735cbd8b693afdd1d8f38df14f99ba99ad137acf78c009a4922b7b33e604063 2105778 libc6-prof_2.13-38+deb7u5_amd64.deb 2ac410704287039b9d3bf5f7e00cf473fba9f69ab76eacd09c81b0a50d405b71 1612832 libc6-pic_2.13-38+deb7u5_amd64.deb 09cd10ebe9d28cac8cd3d55ce69f9baa40a5f669a788d16fb9a49a30999526b3 1272300 libc-bin_2.13-38+deb7u5_amd64.deb ef4d831a804ff9aa87c67df61afa929d77aa6ba1c5e9b54ed146cc4cfe0f5b72 226854 libc-dev-bin_2.13-38+deb7u5_amd64.deb ca4d40d488c6355e523fc622ba47d0ac61fbd3cc6b6f6ba83c5032a905c1b919 150972 multiarch-support_2.13-38+deb7u5_amd64.deb c1515e4a2343483014edc8894aa9de01e7672c550ad4931153f2183bea269c66 3312880 locales-all_2.13-38+deb7u5_amd64.deb bab73ba1858cd7af9247a2859b9028e03ce507781344b48f009737530b71b4a8 4025818 libc6-i386_2.13-38+deb7u5_amd64.deb 88ff1bef520b3997bdd6311812af3a92b9319e296d06431ba12aa0bd5558f64c 1593106 libc6-dev-i386_2.13-38+deb7u5_amd64.deb 015070780080673e83b173ab9a788a41db33c3ff98382fe4a382add75cdc7fd9 215408 nscd_2.13-38+deb7u5_amd64.deb 86959e62e96b57c11124434d7b72af29ba577a77e814c377feda725b41eba1cd 2594166 libc6-dbg_2.13-38+deb7u5_amd64.deb f90c55d34545e386e909f54e991196aadd70ae6adc539135f1423e6c7a912a19 939086 libc6-udeb_2.13-38+deb7u5_amd64.udeb 4eb735842a89c05f8235cefa99c18a3f3c2f642b69d5a5e62825614922d6423c 10188 libnss-dns-udeb_2.13-38+deb7u5_amd64.udeb 7bddb417d06240641bb259a43048b0c41b7c96da445f769e2fa65188d7183204 16146 libnss-files-udeb_2.13-38+deb7u5_amd64.udeb Files: 9e8798a95fb3a02751fa511263985274 5364 libs required eglibc_2.13-38+deb7u5.dsc 1342d1dc7ec91c5c506f1ed2e9b16d68 2014306 libs required eglibc_2.13-38+deb7u5.diff.gz a3fe9222c4c2424704ae8732d09c348c 1897574 doc optional glibc-doc_2.13-38+deb7u5_all.deb f617663c224d24d293cddda9c6886b32 13422420 devel optional eglibc-source_2.13-38+deb7u5_all.deb 54cf82e1f21f45215f6969ccedec3c8d 5718992 localization standard locales_2.13-38+deb7u5_all.deb 7dc06196e98d5585a90d27c52f09cbda 4347686 libs required libc6_2.13-38+deb7u5_amd64.deb ce25855bc2eea6fa6f57b2c0937267ff 2664214 libdevel optional libc6-dev_2.13-38+deb7u5_amd64.deb 1cc1442cc40a38e443df2a3d5b687609 2105778 libdevel extra libc6-prof_2.13-38+deb7u5_amd64.deb f3929feab49521506da589bda77e90f1 1612832 libdevel optional libc6-pic_2.13-38+deb7u5_amd64.deb a52325b702365ed9a22dbc6754453eb1 1272300 libs required libc-bin_2.13-38+deb7u5_amd64.deb 179130e9f330d04587e2eb6fd551c7d7 226854 libdevel optional libc-dev-bin_2.13-38+deb7u5_amd64.deb b4a9b17faec266c18536f18e3e806293 150972 libs required multiarch-support_2.13-38+deb7u5_amd64.deb bc63d15dd069e2a113633cad19079696 3312880 localization extra locales-all_2.13-38+deb7u5_amd64.deb ac0833fe4f472e81739fd2188df81970 4025818 libs optional libc6-i386_2.13-38+deb7u5_amd64.deb 7acf64e83151aac84661578fc5554e6c 1593106 libdevel optional libc6-dev-i386_2.13-38+deb7u5_amd64.deb a62d813baf8332f8f4998cdcc1f84786 215408 admin optional nscd_2.13-38+deb7u5_amd64.deb a46524e019c62a5ebe220dc0a2d60fb1 2594166 debug extra libc6-dbg_2.13-38+deb7u5_amd64.deb c85c74c19b8f04aacd054264025ab98a 939086 debian-installer extra libc6-udeb_2.13-38+deb7u5_amd64.udeb b4fceaad7cf2f24c69c9c9b503ac531e 10188 debian-installer extra libnss-dns-udeb_2.13-38+deb7u5_amd64.udeb 48cb5ed0c3b630b122ec26a79b001bd7 16146 debian-installer extra libnss-files-udeb_2.13-38+deb7u5_amd64.udeb Package-Type: udeb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIVAwUBVDXA77qceAYd3YybAQiVxA/+M00Uxqc4VTixcsFJcJYENny7LK16iyAm J08L4uKGoHGzsDfMZmT5+AWzGYaVHDYyRZVPp7StW5yToxJ4Z2XOiIopbGE86Vei ctq2WeJl383hAgCsJYw05hUMWhZyEsdwQ27+3FGcEd0pDIZjnodZV83vJbXp4q3C bKnprnqpXl4ZZ+f7rlrcmdpn8bw1KZbeFNFXX1sr46V9lymYRnpbq61cNSkF8HSu JnDPMSXa0zC27e/t+bK4ctvuLszBQcvi1xWVPgPFUmTlQ6Dx5KpTIRVmfAIR42yY p3cxPanffeEvAmHSZsxJZV1ZoMEAyygO+/jcemF1nioiS15NicGekUjwizWiX40/ UX+iW1FmDL305iciE7ZqCoSIm4duPj3+6WsXt4w5X4DyKM1TJJfsHsq9ZJZVMZ/H wYBQEvw1Vo5RbgP4+D1f2KiVjfwWTr/JE0/yXISjHrQgE25Rbs+/3VActxfP0c3a tHqBf+eqL6kW5js/P01C5R1X1Mb0GslVcu3tktY1Sei1cHDwbFXuDfXNs08I3Gmp NqwvM1iCWGBGUX+8uPGRAycyrOfzYUlMD9rD/1I+pB8Y5rp9h0dBEX9GLQ+yCDV4 0jTpKx+g5D5pisIABzfxhowPHkqsFUc/NL1oNeN9O+ALHolWFgKYhNXnhmJm0mNe feH+fgjxKvs= =IH7t -----END PGP SIGNATURE-----
--- End Message ---