#! /bin/bash # SPDX-License-Identifier: GPL-2.0 # Copyright (c) 2020 Facebook All Rights Reserved. # # FS QA Test 604 # # Evicting dirty inodes can take a long time during umount. # Check that a new mount racing with such a delayed umount succeeds. # . ./common/preamble _begin_fstest auto quick mount # Import common functions. . ./common/filter # real QA test starts here # Modify as appropriate. _supported_fs generic _require_scratch _scratch_mkfs > /dev/null 2>&1 _scratch_mount for i in $(seq 0 500); do $XFS_IO_PROG -f -c "pwrite 0 4K" $SCRATCH_MNT/$i >/dev/null done # For overlayfs, avoid unmounting the base fs after _scratch_mount tries to # mount the base fs. Delay the mount attempt by a small amount in the hope # that the mount() call will try to lock s_umount /after/ umount has already # taken it. $UMOUNT_PROG $SCRATCH_MNT & sleep 0.01s ; _scratch_mount wait echo "Silence is golden" # success, all done status=0 exit