DF-4760 / run4.sh
#!/bin/sh # DF-4760 v4 — indefinite holder (never closes during observation): # is the free_vinum loop spinning the whole time (devbuf grows linearly) # or does it stop early (plateau) with the tail-block being destroy_dev? set -x date kldunload vinum 2>/dev/null; sleep 1 kldload vinum; sleep 1 sysctl -a 2>/dev/null | grep -E 'i8254.freq|hz' | head -5 vmstat -m | grep -i devbuf /tmp/hold_daemon 300 > /tmp/holder4.log 2>&1 & sleep 2 kldunload vinum & UPID=$! for i in 1 2 3 4 5 6; do sleep 5 echo "== t=$((5*i))s of hang ==" vmstat -m | grep -i devbuf done echo '== holder still open; kldunload state:' ps -axww -o pid,stat,wchan,command | grep -E 'kldunload|hold_daemon' echo '== killing holder now ==' kill -9 %1 2>/dev/null || pkill -9 hold_daemon sleep 3 wait $UPID echo "KLDUNLOAD_RC=$?" kldstat | grep -i vinum || echo "module gone" vmstat -m | grep -i devbuf cat /tmp/holder4.log date |