From owner-freebsd-amd64@FreeBSD.ORG Thu Jan 13 05:50:19 2005 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A6A2416A4CE for ; Thu, 13 Jan 2005 05:50:19 +0000 (GMT) Received: from canning.wemm.org (canning.wemm.org [192.203.228.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5C13143D1D for ; Thu, 13 Jan 2005 05:50:19 +0000 (GMT) (envelope-from peter@wemm.org) Received: from fw.wemm.org (canning.wemm.org [192.203.228.65]) by canning.wemm.org (Postfix) with ESMTP id 3CBF22A8FC; Wed, 12 Jan 2005 21:50:19 -0800 (PST) (envelope-from peter@wemm.org) Received: from peter-laptop.wemm.org (dhcp55.wemm.org [10.0.0.55]) by fw.wemm.org (Postfix) with ESMTP id C42BAE2B5; Wed, 12 Jan 2005 21:50:18 -0800 (PST) (envelope-from peter@wemm.org) Received: from localhost (localhost [[UNIX: localhost]]) by peter-laptop.wemm.org (8.12.11/8.12.11) id j0D5nnXl017036; Wed, 12 Jan 2005 21:49:49 -0800 (PST) (envelope-from peter) From: Peter Wemm To: freebsd-amd64@freebsd.org Date: Wed, 12 Jan 2005 21:49:49 -0800 User-Agent: KMail/1.6.2 References: <20050111132101.84B1.SHINO@fornext.org> In-Reply-To: <20050111132101.84B1.SHINO@fornext.org> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200501122149.49712.peter@wemm.org> Subject: Re: thread with 32bit compatible binary X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jan 2005 05:50:19 -0000 On Monday 10 January 2005 08:51 pm, Shunsuke SHINOMIYA wrote: > Hello, > > I try to run FreeBSD 32bit native JDK 1.4.2 with FreeBSD/amd64 5-stable, > but ld-elf.so.1 says `/usr/lib32/libpthread.so.1: Undefined symbol > "i386_set_ldt"'. > > > ~> java > > /libexec/ld-elf.so.1: /usr/lib32/libpthread.so.1: Undefined symbol > > "i386_set_ldt" > > I set /etc/libmap32.conf to use lib32/libthr or libc_r instead of > lib32/libpthread, but java did not run too. Unfortunately, there is zero chance of getting this binary to work with libpthread because the 32bit mailbox interface is layed out differently on the 64 bit kernel due to differences in pointer sizes, alignment etc. The chances of getting kse apps to run in any form is pretty remote at the moment. > In case of lib32/libthr. > ~> java > /libexec/ld-elf.so.1: /usr/lib32/libthr.so.1: Undefined symbol > "i386_set_ldt" > > In case of lib32/libc_r. > ~> java > yp_match: clnt_call: RPC: Unable to receive; errno = Unknown error: > 671557860 yp_match: clnt_call: RPC: Unable to receive; errno = Unknown > error: -1 yp_match: clnt_call: RPC: Unable to receive; errno = Unknown > error: -1 yp_match: clnt_call: RPC: Unable to receive; errno = Unknown > error: -1 yp_match: clnt_call: RPC: Unable to receive; errno = Unknown > error: -1 yp_match: clnt_call: RPC: Unable to receive; errno = Unknown > error: -1 ... > > Are there any ways to use 32bit compatible thread library with 5-stable? > Is this problem corrected with 6-current? Finding out what the problem is with libc_r is the best short-term chance of success for running threaded apps. libthr and libpthread are out of reach for now because we don't have ldt support. I think I MFC'ed patches to make the compat shim libraries use _amd64_set_gsbase() etc, but that won't make the kernel thread stuff work. > Thank you in advance.