1*ef777be9SPeter Holm#!/bin/sh 2*ef777be9SPeter Holm 3*ef777be9SPeter Holm# Test scenario from: 4*ef777be9SPeter Holm# Bug 254210 - jail: nullfs: deleted files does not free up space 5*ef777be9SPeter Holm# Fixed by: 1a0cb938f7b4 6*ef777be9SPeter Holm 7*ef777be9SPeter Holm# Test scenario idea by: ronald@FreeBSD.org 8*ef777be9SPeter Holm 9*ef777be9SPeter Holm[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 10*ef777be9SPeter Holm. ../default.cfg 11*ef777be9SPeter Holm 12*ef777be9SPeter Holmset -u 13*ef777be9SPeter Holmprog=$(basename "$0" .sh) 14*ef777be9SPeter Holmlog=/tmp/$prog.log 15*ef777be9SPeter Holmdf -h | grep "$mntpoint" 16*ef777be9SPeter Holmmount | grep $mntpoint | grep -q /dev/md && umount -f $mntpoint 17*ef777be9SPeter Holmmdconfig -l | grep -q md$mdstart && mdconfig -d -u $mdstart 18*ef777be9SPeter Holmmdconfig -a -t swap -s 2g -u $mdstart 19*ef777be9SPeter Holmnewfs $newfs_flags -n md$mdstart > /dev/null 20*ef777be9SPeter Holmmount /dev/md$mdstart $mntpoint 21*ef777be9SPeter Holm 22*ef777be9SPeter Holmcd $mntpoint 23*ef777be9SPeter Holmmkdir storage test1 test2 24*ef777be9SPeter Holmmount_nullfs -o rw,noatime ./storage ./test1 25*ef777be9SPeter Holmmount_nullfs -o rw,noatime ./storage ./test2 26*ef777be9SPeter Holm 27*ef777be9SPeter Holmdd if=/dev/random of=./test1/random.dd bs=1M count=1024 status=none 28*ef777be9SPeter Holm 29*ef777be9SPeter Holmrm ./test2/random.dd 30*ef777be9SPeter Holmdf -h | grep "$mntpoint" > $log 31*ef777be9SPeter Holmgrep -E "${mntpoint}$" $log | grep -q '16K 1.8G 0%' && s=0 || s=1 32*ef777be9SPeter Holmif [ $s -eq 1 ]; then 33*ef777be9SPeter Holm echo "Leaking:" 34*ef777be9SPeter Holm cat $log 35*ef777be9SPeter Holm find $mntpoint -type f -ls 36*ef777be9SPeter Holmfi 37*ef777be9SPeter Holmcd - 38*ef777be9SPeter Holmumount $mntpoint/test1 39*ef777be9SPeter Holmumount $mntpoint/test2 40*ef777be9SPeter Holmumount $mntpoint 41*ef777be9SPeter Holmmdconfig -d -u $mdstart 42*ef777be9SPeter Holmrm -f rm -f $log 43*ef777be9SPeter Holmexit $s 44