DF-2620 / trigger_C.sh
#!/bin/sh # DF-2620 variant C trigger v3 (careful): same-pfs_clid merge, then umount -f. # Runs standalone (nohup); everything logged to C_run.log. LOG=/root/poc/df2620/C_run.log exec > $LOG 2>&1 set -x vnconfig -u vn0 2>/dev/null vnconfig -u vn1 2>/dev/null vnconfig -c vn0 /root/poc/df2620/base.img vnconfig -c vn1 /root/poc/df2620/C.img mkdir -p /mnt/h2 /mnt/h2b echo "=== 1. mount MASTER (clindex 0) ===" mount -t hammer2 -o ro /dev/vn0@testvol /mnt/h2 echo MOUNT1_RC=$? echo -n "T1="; ps axlw | grep -c "h2xop-testvol" echo "=== 2. same-clid second device: merge then EBUSY ===" mount -t hammer2 -o ro /dev/vn1@testvol /mnt/h2b echo "MOUNT2_RC=$? (expect 1; 'PFS already mounted')" echo -n "T2="; ps axlw | grep -c "h2xop-testvol" echo "=== 3. umount -f -> xop_helper_cleanup(nmasters=1 < nchains=2) ===" date umount -f /mnt/h2 echo UMOUNT_RC=$? date echo -n "T3="; ps axlw | grep -c "h2xop-testvol" echo "=== 4. reclaim freed xop_groups with a fresh mount + activity ===" mount -t hammer2 -o ro /dev/vn0@testvol /mnt/h2b echo MOUNT3_RC=$? echo -n "T4="; ps axlw | grep -c "h2xop-testvol" i=0 while [ $i -lt 30 ]; do ls -la /mnt/h2b >/dev/null 2>&1 echo -n "loop$i rc=$? t="; ps axlw | grep -c "h2xop-testvol" i=$((i+1)) sleep 1 done echo TRIGGER_C3_DONE |