From owner-freebsd-current@FreeBSD.ORG Tue Jan 17 14:19:50 2006 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 84C0116A41F for ; Tue, 17 Jan 2006 14:19:50 +0000 (GMT) (envelope-from deischen@freebsd.org) Received: from mail.ntplx.net (mail.ntplx.net [204.213.176.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 26AE143D48 for ; Tue, 17 Jan 2006 14:19:50 +0000 (GMT) (envelope-from deischen@freebsd.org) Received: from sea.ntplx.net (sea.ntplx.net [204.213.176.11]) by mail.ntplx.net (8.13.5/8.13.5/NETPLEX) with ESMTP id k0HEJmQi003216; Tue, 17 Jan 2006 09:19:48 -0500 (EST) Date: Tue, 17 Jan 2006 09:19:48 -0500 (EST) From: Daniel Eischen X-X-Sender: eischen@sea.ntplx.net To: Doug White In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by AMaViS and Clam AntiVirus (mail.ntplx.net) Cc: current@freebsd.org Subject: Re: New malloc breaks old libpthread X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Daniel Eischen List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Jan 2006 14:19:50 -0000 On Tue, 17 Jan 2006, Daniel Eischen wrote: > On Mon, 16 Jan 2006, Doug White wrote: > > > Got this trying to run an old Xorg binary on a -CURRENT machine I don't > > update very frequently: > > > > /libexec/ld-elf.so.1: /usr/lib/libpthread.so.1: Undefined symbol "__malloc_lock" > > > > The libpthread.so.1 was from June 2005, prior to the libpthread version > > bump. Unfortunately this means that RELENG_6 compatibility is broken in > > -HEAD since the new libc.so.6 is not compatible with libraries built > > against it prior to the merge date of the new user malloc. > > Don't do that. We don't guarantee -current libraries built on > (vastly) different dates will run nicely together. I wasn't too clear. libpthread.so.1 is supposed to be matched with libc.so.5. Your error message indicates it is trying to use a recent libc.so.6 (which should be matched with libpthread.so.2), not libc.so.5. So something seems screwed up on your end (/etc/libmap.conf?). The only consumers of __malloc_lock and the _malloc_{pre,post}fork symbols (in recent libc.so.6) should be libc_r, libpthread, and libthr. As long as you use libraries that are built from the same source tree, you should be OK. Even when moving from RELENG_6 to HEAD. -- DE