Added 2 new sbrktests, one to test a huge sbrk with only touch a few pages (shouldn't crash),
and another to make sure pages are getting freed when the breakpoint moves down. Also, added
a stacktest that checks that 4M stacks are supported and pages are allocated on-demand.
Currently, this file has tsay() and nsay(), which are atomic vararg print operations
that are loud or quiet (respectively) during automated testing. These are used
throughout userland when output might get intermingled.
Previously, we were relying on subpage allocator failing to signal
that forkbomb was succeeding. However, there are cases where the
subpage allocator never fails but the test is still progressing fine.
This commit moves the secure print into forkbomb itself and changes
the test constraints to ensure that forkbomb runs for a certain amount
of time without crashing
The comments for this particular test suggest that the parent should
attempt waiting on itself. However, the code makes the parent wait
on its child. Fixed.
crash_prog was introduced to force-crash a userspace program
since _exit may not yet be implemented. However, the new versions
of OS161 already have the exact same logic as crash_prog in stdlib/exit.
and userspace.
In userspace, this is accessed through #include <secure.h>
In the kernel, this is access through #include <kern/secure.h>
There is a unit test for this (hm1) that computes the hmac and compares it to
the known value. The salted vesion tested offline.
-----
Also, fixed usespace compile issue with not changing KERNEL_SECRET => SECRET.