From owner-freebsd-current@FreeBSD.ORG Mon Jan 8 20:16:02 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 9152816A40F for ; Mon, 8 Jan 2007 20:16:02 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (eva.fit.vutbr.cz [147.229.176.14]) by mx1.freebsd.org (Postfix) with ESMTP id 24DA813C478 for ; Mon, 8 Jan 2007 20:16:01 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (localhost [127.0.0.1]) by eva.fit.vutbr.cz (envelope-from xdivac02@eva.fit.vutbr.cz) (8.13.8/8.13.7) with ESMTP id l08KFxDl037918 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 8 Jan 2007 21:15:59 +0100 (CET) Received: (from xdivac02@localhost) by eva.fit.vutbr.cz (8.13.8/8.13.3/Submit) id l08KFxYZ037917; Mon, 8 Jan 2007 21:15:59 +0100 (CET) Date: Mon, 8 Jan 2007 21:15:59 +0100 From: Divacky Roman To: Alexander Leidinger Message-ID: <20070108201559.GA29788@stud.fit.vutbr.cz> References: <20070108165157.GA94941@stud.fit.vutbr.cz> <57417212@srv.sem.ipt.ru> <20070108180014.GA4540@stud.fit.vutbr.cz> <20070108210813.368389dc@Magellan.Leidinger.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070108210813.368389dc@Magellan.Leidinger.net> User-Agent: Mutt/1.4.2.2i X-Scanned-By: MIMEDefang 2.57 on 147.229.176.14 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:16:02 -0000 > > 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). 1) the open trace shows REAL path ie. after possible prefixing with /compat/linux 2) the problem is not in existance/nonexistance of the libs, the problem is that when it opens the right library it doesnt use it and keep searching! > > 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. I dont claim to know whats going on but it worked "yesterday" (lets say 20-40 hours ago) and suddenly it doesnt work and NO MAJOR change happened in the linuxulator in the time. Those locking changes cannot affect this behaviour (in fact I tried to backout them). > 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. I dont think we (you :)) commited anything bad to linuxulator but we definitely DIDNT change the userland part. so it must be in the kernel. I hope someone finds answer for this. I am busy for next week ;( roman