RustForge

foundry

Foundry OS: the operating system built on the Rustbelt kernel

foundry / scripts / expect-foundry.txt
1500 bytes ยท raw
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Lines Foundry OS's own part of the self-test must print (the "Foundry OS"
# block at the end of rootfs/scripts/selftest.sh). `make test` passes this
# file to scripts/run-headless.sh as EXTRA_EXPECT; `make test-reference`
# (the kernel's own image) doesn't. One line per check, matched as a fixed
# string anywhere in the serial log. @KERNEL_VERSION@ = config.mk's value,
# @BIN_COUNT@ = the number of programs in /bin.
# Blank lines and lines starting with # are skipped.

# hello-musl: a static-PIE C program on our musl.
hello from musl on Rustbelt @KERNEL_VERSION@ (Foundry OS, static-PIE)

# fprobe (c/fprobe.c): a few key checks by name, then the summary, which
# also pins the number of checks (so none can silently go missing).
fprobe: Foundry OS libc self-check on Rustbelt @KERNEL_VERSION@
  static-PIE: ET_DYN without PT_INTERP           ok
  4 threads x 20000 mutex increments = 80000     ok
  timerfd one-shot: read blocks ~150 ms, count 1 ok
  timerfd 60 ms interval: 5-14 expirations in 700 ms ok
  timerfd wakes epoll_wait                       ok
  TFD_TIMER_CANCEL_ON_SET -> EINVAL (Rustbelt)   ok
fprobe: all 40 checks passed

# dash (ports/dash) running rootfs/scripts/dash-test.sh. @BIN_COUNT@ = the
# number of programs in /bin; the glob in the script must see all of them.
dash-test: ok test-builtins
dash-test: ok background-and-wait
dash-test: ok trap-signal
dash-test: ok pipe-to-rust-grep
dash-test: @BIN_COUNT@ programs in /mnt/disk0/bin
dash-test: all 15 checks passed