>> +seq=`basename $0` >> +seqres=$RESULT_DIR/$seq >> +echo "QA output created by $seq" >> + >> +here=`pwd` >> +tmp=/tmp/$$ >> +status=1 # failure is the default! >> +trap "_cleanup; exit \$status" 0 1 2 3 15 >> + >> +_cleanup() >> +{ >> + cd / >> + rm -f $tmp.* >> +} >> + >> +# get standard environment, filters and checks >> +. ./common/rc >> + >> +# remove previous $seqres.full before test >> +rm -f $seqres.full >> + >> +_require_check_dmesg >> +_supported_fs xfs >> +_require_scratch > > Use _require_check_dmesg to make sure /dev/kmsg is writable. Ugh...I think I do that 2 lines above, right? > >> + >> +log_tag() >> +{ >> + echo "fstests $seqnum [tag]" > /dev/kmsg >> +} >> + >> +dmesg_since_test_tag() >> +{ >> + dmesg | tac | sed -ne "0,\#fstests $seqnum \[tag\]#p" | \ >> + tac >> +} >> + >> +check_dmesg_for_since_tag() >> +{ >> + dmesg_since_test_tag | egrep -q "$1" >> +} >> + >> +echo "Silence is golden." >> + >> + >> +# Skip old kernels that did not print the warning yet >> +log_tag >> +_scratch_mkfs > $seqres.full 2>&1 >> +_scratch_mount -o attr2 >> +umount $SCRATCH_MNT > > ^^ _scratch_unmount > >> +check_dmesg_for_since_tag "XFS: attr2 mount option is deprecated" || \ >> + _notrun "Deprecation warning are not printed at all." >> + >> +# Test mount with default options (attr2 and noikeep) and remount with >> +# 2 groups of options >> +# 1) the defaults (attr2, noikeep) >> +# 2) non defaults (noattr2, ikeep) >> +_scratch_mount >> +for VAR in {attr2,noikeep}; do >> + log_tag >> + mount -o $VAR,remount $SCRATCH_MNT >> + check_dmesg_for_since_tag "XFS: $VAR mount option is deprecated." && \ >> + echo "Should not be able to find deprecation warning for $VAR" >> +done >> +for VAR in {noattr2,ikeep}; do >> + log_tag >> + mount -o $VAR,remount $SCRATCH_MNT >> + check_dmesg_for_since_tag "XFS: $VAR mount option is deprecated" || \ >> + echo "Could not find deprecation warning for $VAR" >> +done >> +umount $SCRATCH_MNT > > ^^ _scratch_unmount > > Just for making sure, looks like You test if remount print "deprecation warning" > properly. What about mount? Should mount has "proper deprecation warning" output? > > Actually, you'd better to describe what's the "proper" behavior, what's not, or > what issue are you trying to cover in a test case. Recent patch: "c23c393eaab5d xfs: remove deprecated mount options", added warning about deprecated options being passed as mount options. These warnings are currently printed *both during mount and remount* of the FS. However some users find the repetitive printing of warnings *during remount* as an inconvenience (https://bugzilla.kernel.org/show_bug.cgi?id=211605 - Re-mount XFS causes "attr2 mount option is deprecated" warning). To address this a patch that stops printing the warning on *remount* (if the option has the same value as during the mount) was proposed https://lore.kernel.org/linux-xfs/20210224214323.394286-1-preichl@xxxxxxxxxx/ Is it clear now? Thanks for the comments.