From owner-freebsd-current@FreeBSD.ORG Mon Jan 8 20:38:04 2007 Return-Path: X-Original-To: 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 58C1316A412 for ; Mon, 8 Jan 2007 20:38:04 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from redbull.bpaserver.net (redbullneu.bpaserver.net [213.198.78.217]) by mx1.freebsd.org (Postfix) with ESMTP id B20B113C4B0 for ; Mon, 8 Jan 2007 20:38:03 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from outgoing.leidinger.net (p54A5F8B7.dip.t-dialin.net [84.165.248.183]) by redbull.bpaserver.net (Postfix) with ESMTP id 0C0DC2E1A2; Mon, 8 Jan 2007 21:13:46 +0100 (CET) Received: from Magellan.Leidinger.net (Magellan.Leidinger.net [192.168.1.1]) by outgoing.leidinger.net (Postfix) with ESMTP id E79745B497E; Mon, 8 Jan 2007 21:08:13 +0100 (CET) Date: Mon, 8 Jan 2007 21:08:13 +0100 From: Alexander Leidinger To: Divacky Roman Message-ID: <20070108210813.368389dc@Magellan.Leidinger.net> In-Reply-To: <20070108180014.GA4540@stud.fit.vutbr.cz> References: <20070108165157.GA94941@stud.fit.vutbr.cz> <57417212@srv.sem.ipt.ru> <20070108180014.GA4540@stud.fit.vutbr.cz> X-Mailer: Claws Mail 2.6.1 (GTK+ 2.10.6; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BPAnet-MailScanner-Information: Please contact the ISP for more information X-BPAnet-MailScanner: Found to be clean X-BPAnet-MailScanner-SpamCheck: not spam, SpamAssassin (not cached, score=-15.364, required 6, autolearn=not spam, BAYES_00 -15.00, DK_POLICY_SIGNSOME 0.00, FORGED_RCVD_HELO 0.14, SMILEY -0.50) X-BPAnet-MailScanner-From: alexander@leidinger.net X-Spam-Status: No Cc: Boris Samorodov , current@freebsd.org Subject: Re: broken linuxulator in -current as of Jan 8 17:51:45 CET 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: Mon, 08 Jan 2007 20:38:04 -0000 Quoting Divacky Roman (Mon, 8 Jan 2007 19:00:14 +0100): > On Mon, Jan 08, 2007 at 08:32:03PM +0300, Boris Samorodov wrote: > > On Mon, 8 Jan 2007 17:51:57 +0100 Divacky Roman wrote: > > > > > can someone confirm that running for example /bin/ls > > > in linux compat doesnt work. here it goes like: > > > > > witten ~# /compat/linux/bin/ls > > > /compat/linux/bin/ls: error while loading shared libraries: /usr/lib/librt.so.1: ELF file OS ABI invalid > > > > I don't have -current ATM, but if you won't find an error at your > > config, I'll definitely do. > > I didnt change anything... it just stopped working :( I am doing > non-fbsd work these days so I really cannot imagine what changed I can confirm the /comapt/linux/bin/ls part. acroread works for me. > > > I cannot see what can be wrong. I tried to backout all changes that > > > alexander commited yesterday but it didnt help. is it regression > > > local to my machine or is the problem -current wide? > > > > /usr/ports/UPDATING (20060616: AFFECTS users of emulation/linux_base-*) > > has some advices how to find and diagnose the culprit. The most > > typical case here is changing the standard way of library searching > > (i.e. LD_* paths, etc.). > > I dont have anything like that set... it looks like a bug in kernel/linux_base > because the trace looks like: > > Jan 8 18:57:59 witten kernel: linux(1582): open(/lib/tls/librt.so.1, 0x0, 0x0) > Jan 8 18:57:59 witten kernel: linux(1582): open returns error 2 % errno 2 ENOENT 2 /* No such file or directory */ Right, does not exist. > Jan 8 18:57:59 witten kernel: linux(1582): open(/compat/linux/lib/librt.so.1, 0x0, 0x0) > Jan 8 18:57:59 witten kernel: linux(1582): open returns error 0 This is a link to librt-2.3.6.so. > Jan 8 18:57:59 witten kernel: linux(1582): open(/usr/lib/tls/librt.so.1, 0x0, 0x0) > Jan 8 18:57:59 witten kernel: linux(1582): open returns error 2 Right, does not exist. > Jan 8 18:57:59 witten kernel: linux(1582): open(/usr/lib/librt.so.1, 0x0, 0x0) > Jan 8 18:57:59 witten kernel: linux(1582): open returns error 0 Does not exist in /comapt/linux (linux one) but in / (FreeBSD one). > Jan 8 18:57:59 witten kernel: linux(1582): exit_group(127) > > ie. it opens the right library but IGNORES it and the iterates through the rest > and then stops on fbsd library saying that its not compatible... This may not be a _new_ bug in the kernel. We know that we have problems when a FreeBSD lib has the same name and version as the linux one. It may be the case that the introduction of a new linux syscall changes the behavior of some linux userland code. glibc can do this based upon the osversion. The question is: why does it try to load the FreeBSD one, when open does not error out with the linux one. This is not something which happens in the kernel, the linux syscalls seem to work just fine. Linux kdump: ---snip--- 97935 ls CALL linux_open(0xbfbfdd60,0,0) 97935 ls NAMI "/compat/linux/lib/tls/librt.so.1" 97935 ls NAMI "/lib/tls/librt.so.1" 97935 ls RET linux_open JUSTRETURN 97935 ls CALL linux_open(0xbfbfdd60,0,0) 97935 ls NAMI "/compat/linux/lib/librt.so.1" 97935 ls NAMI "/compat/linux" 97935 ls NAMI "/compat/linux/lib/librt.so.1" 97935 ls RET linux_open 3 97935 ls CALL read(0x3,0xbfbfde8c,0x200) 97935 ls GIO fd 3 read 512 bytes [linux ELF binary] 97935 ls RET read 512/0x200 97935 ls CALL close(0x3) 97935 ls RET close 0 97935 ls CALL linux_open(0xbfbfdd60,0,0) 97935 ls NAMI "/compat/linux/usr/lib/tls/librt.so.1" 97935 ls NAMI "/usr/lib/tls/librt.so.1" 97935 ls RET linux_open JUSTRETURN 97935 ls CALL linux_open(0xbfbfdd60,0,0) 97935 ls NAMI "/compat/linux/usr/lib/librt.so.1" 97935 ls NAMI "/usr/lib/librt.so.1" 97935 ls RET linux_open 3 97935 ls CALL read(0x3,0xbfbfde8c,0x200) 97935 ls GIO fd 3 read 512 bytes [FreeBSD ELF binary] ---snip--- Unfortunately the linux ldd doesn't work in a linux chroot and the FreeBSD one doesn't like mixing ELF brands... and I need something to eat before I can look further into this. Bye, Alexander. -- "Ah, " said Arthur, "this is obviously some strange usage of the word safe that I wasn't previously aware of. " http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137