Hi,
I am trying to achieve a very simple thing, which is to test an assertion in the Fiasco ICP path. More specifically, I want to add the following assertion to the sys_ipc() function:
" // This assertion is added by us assert(!(state() & Thread_polling));
if (EXPECT_TRUE(have_send_part || have_receive_part)) ret = do_ipc(have_send_part, partner, have_receive_part, sender, t, regs); "
As can be seen, I want to assert that the Thread_polling bit is not set before calling do_ipc(). I planned to do this by compiling the modified Fiasco kernel and the pingpong package. If the assertion would not fire after running the pingpong test suite, I would have at least some confidence that the assertion does not hold. I have already done something similar a while ago, but with the newer versions I cannot seem to get it working.
The first problem was with the DICE compiler, if I used the latest version of the DICE compiler I got the "collect2: ld returned 1 exit status". I solved this by using the 3.1.1 DICE version. I then used the following commands:
" svn co http://svn.tudos.org/repos/tudos/tags/dice/3.1.1 dice ./repomgr co hello cd dice ./bootstrap ./configure ./make cd .. cd l4/pkg svn up pingpong cd .. make O=/tmp/build config make O=/tmp/build "
However, this resulted in the following error
" if [ -r ../dice/Makefile.drops ]; then \ make -C ../dice -f Makefile.drops; \ fi make[1]: Entering directory `/tmp/tudos/dice' ../l4/mk/Makeconf:155: Sorry, your object or source path became garbled. ../l4/mk/Makeconf:156: OBJ_BASE: /tmp/build ../l4/mk/Makeconf:157: SRC_BASE_ABS: /tmp/tudos/l4 ../l4/mk/Makeconf:158: SRC_DIR: /tmp/tudos/dice ../l4/mk/Makeconf:159: OBJ_DIR: /tmp/tudos/dice ../l4/mk/Makeconf:160: PKGDIR: ../l4/mk/Makeconf:161: L4DIR_ABS: /tmp/tudos/l4 ../l4/mk/Makeconf:162: PKGDIR_ABS: ../l4/mk/Makeconf:163: PKGDIR_OBJ: /tmp/tudos/dice ../l4/mk/Makeconf:164: *** Please investigate.. Stop. make[1]: Leaving directory `/tmp/tudos/dice' make: *** [../dice] Error 2 "
As an alternative to the last three lines, I tried to issue the "make O=/tmp/build" command in the l4/pkg directory. This resulted in the following error:
"/bin/bash: did_not_find_dice___please_install_dice: command not found"
Any idea how this can be remedied?
With regards,
Erik Schierboom
Quoting Martin Pohlack mp26@os.inf.tu-dresden.de:
eschierb@sci.kun.nl wrote:
[...]
"/bin/bash: did_not_find_dice___please_install_dice: command not found"
Did you build Dice? It got moved recently in the SVN from l4/tools/dice to tools/dice. I think you have to build it manually.
Cheers, Martin
I believe I did, by invoking the following commands:
" cd dice ./bootstrap ./configure ./make "
On Thu Jun 07, 2007 at 13:17:09 +0200, eschierb@sci.kun.nl wrote:
Quoting Martin Pohlack mp26@os.inf.tu-dresden.de:
eschierb@sci.kun.nl wrote:
[...]
"/bin/bash: did_not_find_dice___please_install_dice: command not found"
Did you build Dice? It got moved recently in the SVN from l4/tools/dice to tools/dice. I think you have to build it manually.
Cheers, Martin
I believe I did, by invoking the following commands:
" cd dice ./bootstrap ./configure ./make "
When being in the l4 directory, does calling ../dice/src/dice work or not? I.e. is there a dice binary?
Adam
l4-hackers@os.inf.tu-dresden.de