From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29944 invoked by alias); 29 Sep 2002 13:23:28 -0000 Mailing-List: contact libc-hacker-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-hacker-owner@sources.redhat.com Received: (qmail 29926 invoked from network); 29 Sep 2002 13:23:28 -0000 Received: from unknown (HELO Cantor.suse.de) (213.95.15.193) by sources.redhat.com with SMTP; 29 Sep 2002 13:23:28 -0000 Received: from Hermes.suse.de (Charybdis.suse.de [213.95.15.201]) by Cantor.suse.de (Postfix) with ESMTP id 697E714475; Sun, 29 Sep 2002 15:23:27 +0200 (MEST) Received: from aj by arthur.inka.de with local (Exim 3.34 #1) id 17ve1O-0005mX-00; Sun, 29 Sep 2002 15:22:06 +0200 Mail-Copies-To: never To: Roland McGrath Cc: GNU libc hacker Subject: Re: glibc make check fails... References: <200209291116.g8TBG6U00631@magilla.sf.frob.com> From: Andreas Jaeger Date: Sun, 29 Sep 2002 06:23:00 -0000 In-Reply-To: <200209291116.g8TBG6U00631@magilla.sf.frob.com> (Roland McGrath's message of "Sun, 29 Sep 2002 04:16:06 -0700") Message-ID: User-Agent: Gnus/5.090008 (Oort Gnus v0.08) XEmacs/21.4 (Artificial Intelligence, i386-suse-linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2002-09/txt/msg00090.txt.bz2 Roland McGrath writes: > Ok, I was wrong. I actually can only reproduce this in a build that's > using not 2.4.18 headers but newer headers that define __NR_set_thread_area > (when running on a 2.4.18 kernel that doesn't have the system call). My kernel headers do not have that call. > > If that is your situation too, are you sure it worked before? If that is > not your situation, then I can't reproduce your situation and you will have > to find some more information for me. > > The crash I see is from the useldt.h macros' use of INLINE_SYSCALL > resulting in it calling __errno_location, which bombs when %gs isn't set up > yet. AFAICT the useldt.h macros have the very same issue with errno not > being set up as the TLS macros have (errno TLS var vs __errno_location > definition from libpthread, but both need %gs to be set up or they crash). > So I am going to consolidate those macros and use the versions that avoid > trying to set errno for both. Unfortunatly my gdb cannot debug this but it's somewhere in the libpthread startup code: 22306: calling init: /builds/test-install/lib/libpthread.so.0 22306: 22306: symbol=__errno_location; lookup in file=linuxthreads/ex3 22306: symbol=__errno_location; lookup in file=/builds/test-install/lib/libpthread.so.0 22306: binding file /builds/test-install/lib/libpthread.so.0 to /builds/test-install/lib/libpthread.so.0: normal symbol `__errno_location' [GLIBC_2.0] Segmentation fault Without the --enable-kernel=2.4.18 everything works, so it seems to be a problem with the useldt code, Andreas -- Andreas Jaeger SuSE Labs aj@suse.de private aj@arthur.inka.de http://www.suse.de/~aj