fi
done
+ # if we unmounted some but not all, restore them and move on
if ! $umount_ret; then
for dir in ${unmounted[@]}; do
mnt $dir
continue
fi
+ #### begin dealing with leaf vols ####
# todo: decipher /mnt/root, like we do in check-subvol-stale
cd /mnt/root
if [[ -e $vol ]]; then
if [[ $bsub ]]; then
tmp=$(mktemp)
# in testing, same subvol is 136 bytes. allow some overhead
- btrfs send --no-data -p $bsub $leaf | head -c 1000 > $tmp
+ btrfs send --no-data -p $bsub $leaf | head -c 1000 > $tmp || [[ $? == 141 ]]
if (( $(stat -c%s $tmp) < 1000)); then
# example output for an empty diff:
# Found a valid Btrfs stream header, version 1
done
## end expire leaf vols ##
fi
+ #### end dealing with leaf vols ####
+
# Note, we make a few assumptions in this script, like
# $d was not a different subvol id than $vol, and
# things otherwise didn't get mounted very strangely.
done
stale_dir=/nocow/btrfs-stale
rm -f $stale_dir/$d
+
done
### disabled