Date: Thu, 28 Sep 2006 07:36:16 +0200 From: Alexander Leidinger <Alexander@Leidinger.net> To: Jung-uk Kim <jkim@FreeBSD.org> Cc: freebsd-emulation@FreeBSD.org, jhb@FreeBSD.org Subject: Re: linuxulator on -CURRENT Message-ID: <20060928073616.yyu76vcnc4g0sowc@webmail.leidinger.net> In-Reply-To: <200609272020.35161.jkim@FreeBSD.org> References: <200609261733.48398.jkim@FreeBSD.org> <20060927103401.ml5fhn8cg0swc0go@webmail.leidinger.net> <200609272020.35161.jkim@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Quoting Jung-uk Kim <jkim@FreeBSD.org> (from Wed, 27 Sep 2006 20:20:32 -0400= ): jhb@ CCed... we try to hunt down the bug which was introduced to amd64 =20 with the commits which removed the stackgap. > On Wednesday 27 September 2006 04:34 am, Alexander Leidinger wrote: >> Quoting Jung-uk Kim <jkim@FreeBSD.org> (from Tue, 26 Sep 2006 =20 >> 17:33:44 -0400): >> Maybe instead of playing with gdb/ddb/printfs it may be also >> possible to use the linux test project testcases to frind the >> problem. You can download a precompiled version of it from: >> http://www.leidinger.net/FreeBSD/linuxolator/ltp-full-20060822-read >> y.tar.bz2 >> >> Have a look at http://wiki.FreeBSD.org/linux-kernel for a >> description how to use it and what tests are known to hang on i386 >> (they may or may not hand on amd64, and some of the tests are known >> to need a little bit of time). I suggest to do this in a >> gentoo-chroot (linux_dist port, not the linux_base port). > > Well, problem is the tool is using shell scripts heavily and it > doesn't work because it has the exact same problems. :-( > I ran some binaries manually, though. I got: In the archive of LTP on my site there's a verbose logfile in the root =20 of the ltp directory. There you can see in which order and with which =20 parameters the tests are called. Could you please run them (at least =20 until the first syscall, the rest isn't important as long as there is =20 this bug) by hand and add a corresponding status and comment to the =20 wiki? It may be the case that the problem is somewhere in waitpid, but =20 it could also be the case it is somewhere else (fork, clone, ...). But =20 we need to see the big picture to determine this. > %./waitpid06 > waitpid06 1 FAIL : Child 2097 did not exit normally > status: 139 > waitpid06 2 FAIL : Child 2099 did not exit normally > status: 139 > waitpid06 3 FAIL : Child 2098 did not exit normally > status: 139 > waitpid06 4 FAIL : Child 2100 did not exit normally > status: 139 > waitpid06 5 FAIL : Child 2101 did not exit normally > status: 139 > waitpid06 6 FAIL : Child 2102 did not exit normally > status: 139 > waitpid06 7 FAIL : Child 2103 did not exit normally > status: 139 > waitpid06 8 FAIL : Child 2104 did not exit normally > status: 139 > waitpid06 1 FAIL : child returned bad status > waitpid06 2 FAIL : waitpid06 FAILED > %./waitpid07 > waitpid07 1 FAIL : Child 2171 did not exit normally > waitpid07 2 FAIL : Child 2170 did not exit normally > waitpid07 3 FAIL : Child 2169 did not exit normally > waitpid07 4 FAIL : Child 2168 did not exit normally > waitpid07 5 FAIL : Child 2175 did not exit normally > waitpid07 6 FAIL : Child 2174 did not exit normally > waitpid07 7 FAIL : Child 2173 did not exit normally > waitpid07 8 FAIL : Child 2172 did not exit normally > waitpid07 1 FAIL : child returned bad status > waitpid07 2 FAIL : waitpid07 FAILED > %./waitpid08 > waitpid08 1 FAIL : Child 2180 did not stopped > waitpid08 2 FAIL : Kill of child 2180 failed, errno =3D 3 > waitpid08 3 FAIL : Child 2181 did not stopped > waitpid08 4 FAIL : Kill of child 2181 failed, errno =3D 3 > waitpid08 5 FAIL : Child 2179 did not stopped > waitpid08 6 FAIL : Kill of child 2179 failed, errno =3D 3 > waitpid08 7 FAIL : Child 2178 did not stopped > waitpid08 8 FAIL : Kill of child 2178 failed, errno =3D 3 > waitpid08 9 FAIL : Child 2182 did not stopped > waitpid08 10 FAIL : Kill of child 2182 failed, errno =3D 3 > waitpid08 11 FAIL : Child 2183 did not stopped > waitpid08 12 FAIL : Kill of child 2183 failed, errno =3D 3 > waitpid08 13 FAIL : Child 2184 did not stopped > waitpid08 14 FAIL : Kill of child 2184 failed, errno =3D 3 > waitpid08 15 FAIL : Child 2185 did not stopped > waitpid08 16 FAIL : Kill of child 2185 failed, errno =3D 3 > waitpid08 1 FAIL : child returned bad status > waitpid08 2 FAIL : waitpid08 FAILED > %./waitpid09 > waitpid09 1 FAIL : status value got 139 expected 0 > waitpid09 2 FAIL : case 1 FAILED > waitpid09 3 PASS : case 2 PASSED > waitpid09 1 BROK : child returned bad status > %./waitpid10 > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > waitpid10 1 BROK : Unexpected signal 11 received. > %./waitpid11 > waitpid11 1 FAIL : Child 861 did not exit normally > waitpid11 2 FAIL : Child 863 did not exit normally > waitpid11 3 FAIL : Child 862 did not exit normally > waitpid11 4 FAIL : Child 864 did not exit normally > waitpid11 5 FAIL : Child 860 did not exit normally > waitpid11 6 FAIL : Child 859 did not exit normally > waitpid11 7 FAIL : Child 858 did not exit normally > waitpid11 8 FAIL : Child 857 did not exit normally > waitpid11 9 FAIL : Test FAILED > waitpid11 1 FAIL : child returned bad status > waitpid11 2 FAIL : waitpid11 FAILED > %./waitpid12 > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 BROK : Unexpected signal 11 received. > waitpid12 1 FAIL : Child 874 exited with wrong status > waitpid12 1 BROK : Unexpected signal 28 received. > %waitpid12 2 FAIL : Expected 3 got 2 > waitpid12 3 FAIL : Child 873 exited with wrong status > waitpid12 4 FAIL : Expected 3 got 2 > waitpid12 5 FAIL : Child 872 exited with wrong status > waitpid12 6 FAIL : Expected 3 got 2 > waitpid12 7 FAIL : Child 871 exited with wrong status > waitpid12 8 FAIL : Expected 3 got 2 > waitpid12 9 FAIL : Child 870 exited with wrong status > waitpid12 10 FAIL : Expected 3 got 2 > waitpid12 11 FAIL : Child 869 exited with wrong status > waitpid12 12 FAIL : Expected 3 got 2 > waitpid12 13 FAIL : Child 868 exited with wrong status > waitpid12 14 FAIL : Expected 3 got 2 > waitpid12 15 FAIL : Child 867 exited with wrong status > waitpid12 16 FAIL : Expected 3 got 2 > waitpid12 17 FAIL : Test FAILED > > Results from waitpid0[1-5] are the same as those of i386 from Wiki. > >> Feel free to add content to the wiki. >> >> > * PS: I have modified ports/devel/linux_kdump to build without >> > gentoo. If anybody is interested, you can get it from here: >> > >> > http://people.freebsd.org/~jkim/linux_kdump.tar.gz >> > >> > I just added Linux header files as a patch. :-P >> >> I don't like this fix. > > Believe me, I don't like it myself. That's why I didn't attempt to > commit it. ;-) > >> Why not use the package from the build cluster instead? > > # uname -mr > 7.0-CURRENT amd64 > # pkg_add -r linux_kdump > Error: FTP Unable to get =20 > ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-7-current/Latest/li= nux_kdump.tbz: File unavailable (e.g., file not found, no =20 > access) > pkg_add: unable to fetch =20 > 'ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-7-current/Latest/l= inux_kdump.tbz' by =20 > URL Yes, as long as there's the bug, we can't build it. The i386 one should work= . Bye, Alexander. --=20 If you're wondering if you need to stop and pick up bread and eggs on the way home, you do. http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID =3D B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID =3D 72077137
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060928073616.yyu76vcnc4g0sowc>