From patchwork Sat Aug 1 22:27:38 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paul Pluzhnikov X-Patchwork-Id: 7972 Received: (qmail 109827 invoked by alias); 1 Aug 2015 22:28:13 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 109814 invoked by uid 89); 1 Aug 2015 22:28:11 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.1 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-vk0-f43.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type:content-transfer-encoding; bh=HtqNiG7tIrZpduK0FfiGmjYktgbaml8g8OsfTerQQqc=; b=avAuC8uKFZtTJa+Ld0vPrxQZ1SVZLvri62DF/H7vIOQH20xDAgDM6gou/GN6KDJZYM wWbkur6SqDl1wO6bL9TnMpB/p/dSEkJhT05MAzb6wi6ipHd6LPXb0JarKbykx81ORU11 TyLNFUhUWnDqkCTYfN0tc7fCm3SL+QDfrwgJH+novMC7tig0w9yTrtDtcBfA8cWPOsZF 0KH+4xG+xjk7O2xZcdEjnL46SxnovIQOyUSwzmaNfElWTQU5wdiZ5q2eD467APow9yWn tToPoNppdz+84cpyhJfDTqoLTgk+aR52tqLtJpMMPn7eE4HtIYKzoD+PGSTBxsxJJsFr oz6w== X-Gm-Message-State: ALoCoQl0WXuPmQSIq8NXcwnfa59oJQmb/5EeB2PnazqIwhLHFyyVXNDA5rH+caLUVO8LVMPNv7BA X-Received: by 10.52.244.70 with SMTP id xe6mr15596016vdc.22.1438468088087; Sat, 01 Aug 2015 15:28:08 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <55BD1D92.6040406@redhat.com> From: Paul Pluzhnikov Date: Sat, 1 Aug 2015 15:27:38 -0700 Message-ID: Subject: Re: glibc 2.22 -- Final testing for 32-bit x86 failing? To: "H.J. Lu" Cc: "Carlos O'Donell" , GNU C Library On Sat, Aug 1, 2015 at 1:03 PM, H.J. Lu wrote: > On Sat, Aug 1, 2015 at 12:27 PM, Carlos O'Donell wrote: >> Community, >> >> Has anyone else done 32-bit x86 testing and had it work? Top of master >> is showing some kind of problem with memory corruption. >> >> memory clobbered past end of allocated block >> >> Program received signal SIGABRT, Aborted. >> 0xf7ffdc10 in __kernel_vsyscall () >> (gdb) bt >> #0 0xf7ffdc10 in __kernel_vsyscall () >> #1 0xf7e7548f in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55 >> #2 0xf7e76ec0 in __GI_abort () at abort.c:89 >> #3 0xf7eb4f99 in __libc_message (do_abort=do_abort@entry=1, fmt=fmt@entry=0xf7fbaf3f "%s") at ../sysdeps/posix/libc_fatal.c:175 >> #4 0xf7eb4fd4 in __GI___libc_fatal (message=0xf7fbe128 "memory clobbered past end of allocated block\n") >> at ../sysdeps/posix/libc_fatal.c:186 >> #5 0xf7ec2570 in mabort (status=MCHECK_TAIL) at mcheck.c:362 >> #6 0xf7ec264b in checkhdr (hdr=hdr@entry=0x5657a018) at mcheck.c:113 >> #7 0xf7ec2c18 in checkhdr (hdr=0x5657a018) at mcheck.c:185 >> #8 freehook (ptr=0x5657a030, caller=0xf7e6c86b <_nl_load_locale_from_archive+1419>) at mcheck.c:186 >> #9 0xf7ec0395 in __GI___libc_free (mem=0x5657a030) at malloc.c:2936 >> #10 0xf7e6c86b in _nl_load_locale_from_archive (category=category@entry=5, namep=namep@entry=0xffffcd9c) at loadarchive.c:190 >> #11 0xf7e6b730 in _nl_find_locale (locale_path=0x0, locale_path_len=0, category=category@entry=5, name=name@entry=0xffffcd9c) >> at findlocale.c:154 >> #12 0xf7e6ae51 in __GI_setlocale (category=5, locale=0x80882e4 "") at setlocale.c:417 >> #13 0x0804a428 in ?? () >> #14 0xf7e60480 in __libc_start_main (main=0x804a3d0, argc=2, argv=0xffffcfc0, init=0x8088200, fini=0x8088270, >> rtld_fini=0x56565ab0 <_dl_fini>, stack_end=0xffffcfbc) at libc-start.c:289 >> #15 0x0804abb7 in ?? () >> (gdb) >> >> Has anyone seen this? This appears to be new. I'll see if I can track >> this down to an environment change in my build box (Fedora 21). > > I only saw > > FAIL: math/test-float FWIW, On Ubuntu 14.04 LTS, using system "gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4" and ../configure --prefix=/usr CC='gcc -m32' CXX='g++ -m32' i686-linux-gnu I couldn't build current trunk (8cf0ac959d318cf113feb1a9ca5d325010bb2124): make[2]: Entering directory `/glibc-git/libio' gcc -m32 oldfileops.c -c -std=gnu99 -fgnu89-inline -fno-stack-protector -O2 -Wall -Werror -Wno-error=undef -Wundef -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wstrict-prototypes -fPIC -Wa,-mtune=i686 -fexceptions -ftls-model=initial-exec -U_FORTIFY_SOURCE -I../include -I/glibc-git/build32/libio -I/glibc-git/build32 -I../sysdeps/unix/sysv/linux/i386/i686 -I../sysdeps/i386/i686/nptl -I../sysdeps/unix/sysv/linux/i386 -I../sysdeps/unix/sysv/linux/x86 -I../sysdeps/i386/nptl -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/i386 -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/i386/i686/fpu/multiarch -I../sysdeps/i386/i686/fpu -I../sysdeps/i386/i686/multiarch -I../sysdeps/i386/i686 -I../sysdeps/i386/i486 -I../sysdeps/i386/fpu -I../sysdeps/x86/fpu/include -I../sysdeps/x86/fpu -I../sysdeps/i386 -I../sysdeps/x86 -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754 -I../sysdeps/generic -I.. -I../libio -I. -D_LIBC_REENTRANT -include/glibc-git/build32/libc-modules.h -DMODULE_NAME=libc -include ../include/libc-symbols.h -DPIC -DSHARED -D_IO_MTSAFE_IO -o /glibc-git/build32/libio/oldfileops.os -MD -MP -MF /glibc-git/build32/libio/oldfileops.os.dt -MT /glibc-git/build32/libio/oldfileops.os oldfileops.c: In function ‘_IO_old_file_write’: oldfileops.c:670:7: error: implicit declaration of function ‘__write’ [-Werror=implicit-function-declaration] _IO_ssize_t count = write (f->_fileno, data, to_do); ^ cc1: all warnings being treated as errors The following trivial patch fixes this: Ok to commit above? After that, make check: XPASS: conform/ISO11/complex.h/conform XPASS: conform/ISO11/stdalign.h/conform XPASS: conform/ISO11/stdnoreturn.h/conform FAIL: elf/tst-protected1a FAIL: elf/tst-protected1b As far as I understand, the tst-protected1{a,b} are expected to fail with binutils 2.24-5ubuntu13 diff --git a/libio/oldfileops.c b/libio/oldfileops.c index 54789b2..25797c8 100644 --- a/libio/oldfileops.c +++ b/libio/oldfileops.c @@ -41,6 +41,7 @@ #include #include #include +#include #ifndef errno extern int errno; #endif