GaloisInc / BESSPIN-Tool-Suite

The core tool of the BESSPIN Framework.
Other
5 stars 2 forks source link

test_rlr_heapExhaust kills the whole test suite on FreeBSD GFE QEMU #1245

Open brooksdavis opened 3 years ago

brooksdavis commented 3 years ago

In the GFE configuration there is no swap space configured so running the system out of heap triggers to OOM killer. In some cases it goes badly wrong and kills not only the problem process, but login and the shell used to run the tests. The test harness fails to detect that it has fallen back to the login prompt and times out which ends the test run. (I believe this doesn't happen with CheriBSD Qemu because we have swap configured so we timeout and kill the process before it runs the system out of swap space.) I expect I'll trip over this one on CHERI P1/P2 evaluations.

besspinPrompt> ./test_rlr_heapExhaust.riscv 1 > & rm-output.txt
./test_rlr_heapExhaust.riscv 1 > & rm-output.txt^M^M^M
Aug  6 15:44:44 gfe kernel: pid 1151 (test_rlr_heapExhaus), jid 0, uid 0, was killed: out of swap space^M^M^M
Aug  6 15:44:46 gfe kernel: pid 665 (csh), jid 0, uid 0, was killed: out of swap space^M^M^M
Aug  6 15:44:48 gfe kernel: pid 694 (ntpd), jid 0, uid 0, was killed: out of swap space^M^M^M
^M^M^M
FreeBSD/riscv (gfe) (ttyu0)^M^M^M
^M^M^M
login: Aug  6 15:44:50 gfe kernel: pid 661 (login), jid 0, uid 0, was killed: out of swap space^M^M
Aug  6 15:44:51 gfe kernel: pid 710 (sshd), jid 0, uid 0, was killed: out of swap space^M^M
^C
^C^M^M
^M^M^M
FreeBSD/riscv (gfe) (ttyu0)^M^M^M
^M^M^M
login: ^C
^C^M^M
^M^M^M
FreeBSD/riscv (gfe) (ttyu0)^M^M^M
^M^M^M
login: ^C
^C^M^M
^M^M^M
FreeBSD/riscv (gfe) (ttyu0)^M^M^M
^M^M^M
login:
 ^M^M
^M^M^M
FreeBSD/riscv (gfe) (ttyu0)^M^M^M
^M^M^M
login: halt -p
halt -p^M^M