DF-4059 / run_bootA.sh
#!/bin/sh # run_bootA.sh -- DF-4059 + DF-4060 baseline (UNPATCHED kernel) evidence run. # Order: non-fatal evidence first; the DF-4060 panic finale is LAST # (the guest is expected to die at "panic: amr: slot %d busy?"). # Run from the repo root on the host. set -e ROOT=$(cd "$(dirname "$0")/../../.." && pwd) cd "$ROOT" V=./dfbsd-qemu/vm.sh $V run_root 'cd /root/rig && kldload ./dfamr_rig.ko' $V run_root 'cd /root/rig && ./dfamr_ctl prime && ./dfamr_ctl offs && ./dfamr_ctl magic' $V run_root 'cd /root/rig && ./dfamr_ctl b' | tee /tmp/4059b.out $V run_root 'cd /root/rig && ./dfamr_ctl leak 2 && dmesg > leak2.dmesg' $V run_root 'cd /root/rig && ./dfamr_ctl leak 7 && dmesg > leak7.dmesg' $V run_root 'cd /root/rig && ./dfamr_ctl tmo 0' | tee /tmp/4060tmo.out $V run_root 'cd /root/rig && ./dfamr_ctl late' | tee /tmp/4060late.out $V run_root 'cd /root/rig && dmesg > dmesg_bootA.txt && wc -l dmesg_bootA.txt' echo "=== non-fatal evidence complete; DF-4060 panic finale next ===" $V run_root 'cd /root/rig && ./dfamr_ctl tmo 1' | tee /tmp/4060finale.out || true sleep 5 echo "=== guest should be dead in DDB; serial tail: ===" tail -40 "$ROOT/dfbsd-qemu/boot.log" |