#!/bin/sh
# DF-2666 guest-side trigger run: image prep + build + run.
# All artifacts in /root/poc/df2666/.  Run as root on the guest.
set -x
D=/root/poc/df2666
mkdir -p $D
vnconfig -u vn0 2>/dev/null
dd if=/dev/zero of=$D/img bs=1m count=128 2>/dev/null
vnconfig -c vn0 $D/img
newfs_hammer2 -L testvol /dev/vn0 > $D/newfs.log 2>&1
mkdir -p /mnt/h2poc2666

cc -O -I/usr/src/sys -o $D/df2666_trigger $D/df2666_trigger.c > $D/cc.log 2>&1 || { cat $D/cc.log; exit 1; }

dmesg > $D/dmesg.before
$D/df2666_trigger 200 > $D/trigger.out 2>&1
echo "TRIGGER_RC=$?"
sleep 1
dmesg > $D/dmesg.after

echo "=== trigger stdout ==="
cat $D/trigger.out
echo "=== new console lines (panics/wedges would show here) ==="
diff $D/dmesg.before $D/dmesg.after | head -40 || true
vnconfig -u vn0 2>/dev/null
echo RUN_DF2666_DONE
