From owner-freebsd-current@FreeBSD.ORG Tue Jul 10 20:41:09 2007 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D0E2016A475 for ; Tue, 10 Jul 2007 20:41:09 +0000 (UTC) (envelope-from michiel@boland.org) Received: from neerbosch.nijmegen.internl.net (neerbosch.nijmegen.internl.net [217.149.193.38]) by mx1.freebsd.org (Postfix) with ESMTP id 69DCD13C465 for ; Tue, 10 Jul 2007 20:41:09 +0000 (UTC) (envelope-from michiel@boland.org) Received: from neerbosch.nijmegen.internl.net by neerbosch.nijmegen.internl.net via neerbosch.nijmegen.internl.net [217.149.193.38] with ESMTP id l6AKf8AX019732 (8.13.4/1.4); Tue, 10 Jul 2007 22:41:08 +0200 (MEST) Received: from localhost by neerbosch.nijmegen.internl.net via mboland@localhost with ESMTP id l6AKf8Tq019728 (8.13.4/2.02); Tue, 10 Jul 2007 22:41:08 +0200 (MEST) X-Authentication-Warning: neerbosch.nijmegen.internl.net: mboland owned process doing -bs Date: Tue, 10 Jul 2007 22:41:08 +0200 (MEST) From: Michiel Boland To: freebsd-current@freebsd.org In-Reply-To: Message-ID: References: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: peter@freebsd.org Subject: Re: upgrade 6-STABLE to -CURRENT on sparc64 renders box unusable X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Jul 2007 20:41:09 -0000 Well, in fact I did manage to debug this further. :) The problem is that on sparc64 and -CURRENT, every executable segfaults in _rtld init_rtld relocate_objects reloc_non_plt mmap __getosreldate It appears that __getosreldate was added five days ago, which may explain why the breakage on sparc64 hasn't been reported yet. (I am ccing peter@ since he committed this.) If I apply the following patch, then rebuild libc, things are more or less ok again. Of course this patch is very suboptimal, I am just trying to point out where the problem is. --- __getosreldate.c.orig 2007-07-10 22:29:02.000000000 +0200 +++ __getosreldate.c 2007-07-10 22:28:20.000000000 +0200 @@ -42,13 +42,10 @@ int __getosreldate(void) { - static int osreldate; + int osreldate; size_t len; int oid[2]; int error, osrel; - - if (osreldate != 0) - return (osreldate); oid[0] = CTL_KERN; oid[1] = KERN_OSRELDATE;