Date: Mon, 8 Jan 2007 21:58:21 +0100 From: Alexander Leidinger <Alexander@Leidinger.net> To: Divacky Roman <xdivac02@stud.fit.vutbr.cz> Cc: Boris Samorodov <bsam@ipt.ru>, current@freebsd.org Subject: Re: broken linuxulator in -current as of Jan 8 17:51:45 CET Message-ID: <20070108215821.75cfe679@Magellan.Leidinger.net> In-Reply-To: <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> <20070108201559.GA29788@stud.fit.vutbr.cz>
next in thread | previous in thread | raw e-mail | index | archive | help
Quoting Divacky Roman <xdivac02@stud.fit.vutbr.cz> (Mon, 8 Jan 2007 21:15:59 +0100): > > > 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! Yes, see my "the question is" below (quoted). > > > 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). For the benefit of those not seeing the ICQ discussion: I have a plain -current as of Dec 28 around, and it shows the same behavior. > > 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'm not convinced that it is in the kernel. It may be in the kernel, or a sideeffect of a kernel change (addition of a syscal resulting in different userland behavior). Bye, Alexander. -- It was OK before you touched it. http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070108215821.75cfe679>