Further mkfs options are then appended by _mkfs_log at mkfs time with _scratch_mkfs_xfs.
Currently there are a few ways mkfs options are specified in XFSQA:
1) suite wide MKFS_OPTIONS are specified before tests are run
e.g.
vimes:/home/fsgqa/kali/xfsqa/xfstests # export MKFS_OPTIONS="-l size=100m"
2) test wide MKFS_OPTIONS are specified during a particular test
e.g. 119
export MKFS_OPTIONS="-l version=2,size=1200b,su=64k"
3) mkfs options are appended by a test at mkfs time
e.g. 083
_scratch_mkfs_xfs -dsize=$fsz,agcount=$ags >>$seq.full
(4) Another form of appending is just appending to MKFS_OPTIONS directly
e.g. 114:export MKFS_OPTIONS="$MKFS_OPTIONS -i parent=1"
115:export MKFS_OPTIONS="$MKFS_OPTIONS -i paths=1"
e.g. Methods (2) *and* (3) for specifiying mkfs options are used in these tests.
This causes problems, because the mkfs options fallback code assumes the
_mkfs_log _scratch_mkfs_xfs appended options are the only test specified options.
This change causes tests using _mkfs_log to only use option (2).
~
~
Merge of master-melb:xfs-cmds:29031a by kenmcd.
if [ "$mkfs" = "#" ]; then
continue
fi
- export MKFS_OPTIONS="-l $mkfs"
export MOUNT_OPTIONS="-o noalign,$mnt"
- _mkfs_log
+ _mkfs_log "-l $mkfs"
_create_log
_check_log
QA output created by 018
*** init FS
-*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=32k.mkfs-lversion=1.filtered
-*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=32k.mkfs-lversion=1.filtered
-*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=32k.mkfs-lversion=1.filtered
-*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=32k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=32k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=32k.mkfs-lversion=2.filtered
-*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=64k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=64k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=64k.mkfs-lversion=2.filtered
-*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=128k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=128k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=128k.mkfs-lversion=2.filtered
-*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=256k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=256k.mkfs-lversion=2.filtered
-*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=256k.mkfs-lversion=2.filtered
+*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=32k.mkfs-lsize=2000b-lversion=1.filtered
+*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=32k.mkfs-lsize=2000b-lversion=1.filtered
+*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=32k.mkfs-lsize=2000b-lversion=1.filtered
+*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=32k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=32k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=32k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=64k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=64k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=64k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=128k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=128k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=128k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.op with 018.fulldir/op.mnt-onoalign,logbsize=256k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_inode with 018.fulldir/trans_inode.mnt-onoalign,logbsize=256k.mkfs-lsize=2000b-lversion=2.filtered
+*** compare logprint: 018.trans_buf with 018.fulldir/trans_buf.mnt-onoalign,logbsize=256k.mkfs-lsize=2000b-lversion=2.filtered
# do a simple quota test to ensure DQUOT data is happening
-export MKFS_OPTIONS="-l version=1"
export MOUNT_OPTIONS="-o quota,gquota"
if [ "$HOSTOS" = "IRIX" ]; then
fi
# mount with quotas?
-_scratch_mkfs_xfs 1>/dev/null 2>&1
+_scratch_mkfs_xfs "-l version=1" 1>/dev/null 2>&1
_qmount
src/feature -u $SCRATCH_DEV || _notrun "No quota support at mount time"
umount $SCRATCH_MNT
-_mkfs_log
+_mkfs_log "-l version=1"
_create_log
_check_log
_print_transaction_inode $start
QA output created by 081
*** init FS
-*** compare logprint: 081.ugquota.trans_inode with 081.fulldir/trans_inode.mnt-oquota,gquota.mkfs-lversion=1.filtered
+*** compare logprint: 081.ugquota.trans_inode with 081.fulldir/trans_inode.mnt-oquota,gquota.mkfs-lsize=2000b-lversion=1.filtered
*** unmount
start=0
fi
echo "--- mkfs=$mkfs, mnt=$mnt, sync=$s ---"
- export MKFS_OPTIONS="-l $mkfs"
export MOUNT_OPTIONS="-o $mnt"
- if ! _mkfs_log; then
+ if ! _mkfs_log "-l $mkfs"; then
continue
fi
if [ $s = "sync" ]; then
QA output created by 082
*** init FS
--- mkfs=version=2, mnt=logbsize=32k, sync=sync ---
-*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lversion=2.sync.filtered
-*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lversion=2.sync.filtered
+*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2.sync.filtered
+*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2.sync.filtered
--- mkfs=version=2,su=4096, mnt=logbsize=32k, sync=sync ---
-*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lversion=2,su=4096.sync.filtered
-*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lversion=2,su=4096.sync.filtered
+*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=4096.sync.filtered
+*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=4096.sync.filtered
--- mkfs=version=2,su=32768, mnt=logbsize=32k, sync=sync ---
-*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lversion=2,su=32768.sync.filtered
-*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lversion=2,su=32768.sync.filtered
+*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=32768.sync.filtered
+*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=32768.sync.filtered
--- mkfs=version=2,su=36864, mnt=logbsize=32k, sync=sync ---
-*** Cannot mkfs for this test using option specified: -l version=2,su=36864 -l size=2000b ***
+*** Cannot mkfs for this test using option specified: -l size=2000b -l version=2,su=36864 ***
--- mkfs=version=2,su=5120, mnt=logbsize=32k, sync=sync ---
-*** Cannot mkfs for this test using option specified: -l version=2,su=5120 -l size=2000b ***
+*** Cannot mkfs for this test using option specified: -l size=2000b -l version=2,su=5120 ***
--- mkfs=version=2, mnt=logbsize=32k, sync=nosync ---
-*** compare logprint: 082.op with 082.fulldir/op.mnt-ologbsize=32k.mkfs-lversion=2.nosync.filtered
-*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lversion=2.nosync.filtered
-*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lversion=2.nosync.filtered
+*** compare logprint: 082.op with 082.fulldir/op.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2.nosync.filtered
+*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2.nosync.filtered
+*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2.nosync.filtered
--- mkfs=version=2,su=4096, mnt=logbsize=32k, sync=nosync ---
-*** compare logprint: 082.op with 082.fulldir/op.mnt-ologbsize=32k.mkfs-lversion=2,su=4096.nosync.filtered
-*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lversion=2,su=4096.nosync.filtered
-*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lversion=2,su=4096.nosync.filtered
+*** compare logprint: 082.op with 082.fulldir/op.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=4096.nosync.filtered
+*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=4096.nosync.filtered
+*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=4096.nosync.filtered
--- mkfs=version=2,su=32768, mnt=logbsize=32k, sync=nosync ---
-*** compare logprint: 082.op with 082.fulldir/op.mnt-ologbsize=32k.mkfs-lversion=2,su=32768.nosync.filtered
-*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lversion=2,su=32768.nosync.filtered
-*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lversion=2,su=32768.nosync.filtered
+*** compare logprint: 082.op with 082.fulldir/op.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=32768.nosync.filtered
+*** compare logprint: 082.trans_inode with 082.fulldir/trans_inode.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=32768.nosync.filtered
+*** compare logprint: 082.trans_buf with 082.fulldir/trans_buf.mnt-ologbsize=32k.mkfs-lsize=2000b-lversion=2,su=32768.nosync.filtered
--- mkfs=version=2,su=36864, mnt=logbsize=32k, sync=nosync ---
-*** Cannot mkfs for this test using option specified: -l version=2,su=36864 -l size=2000b ***
+*** Cannot mkfs for this test using option specified: -l size=2000b -l version=2,su=36864 ***
--- mkfs=version=2,su=5120, mnt=logbsize=32k, sync=nosync ---
-*** Cannot mkfs for this test using option specified: -l version=2,su=5120 -l size=2000b ***
+*** Cannot mkfs for this test using option specified: -l size=2000b -l version=2,su=5120 ***
_require_scratch
_require_v2log
-export MKFS_OPTIONS="-l version=1"
export MOUNT_OPTIONS="-o logbsize=64k"
# try and mount a v1 log with a v2 LRsize
# expect failure
-_mkfs_log
+_mkfs_log "-l version=1"
_create_log
# now make the fs a v2 fs and try to mount again
_mkfs_log()
{
# create the FS
+ # mkfs options to append to log size otion can be specified ($*)
+ export MKFS_OPTIONS="-l size=2000b $*"
_full "mkfs"
- extra_ops="-l size=2000b"
- _scratch_mkfs_xfs $extra_ops >>$seq.full 2>&1
+ _scratch_mkfs_xfs >>$seq.full 2>&1
if [ $? -ne 0 ] ; then
- _echofull "Cannot mkfs for this test using option specified: $MKFS_OPTIONS $extra_ops"
+ _echofull "Cannot mkfs for this test using option specified: $MKFS_OPTIONS"
return 1
fi
{
# test out mkfs to see if it supports "-l version=2"
export MKFS_OPTIONS="-l version=2"
- if ! _scratch_mkfs_xfs $extra_ops >>$seq.full 2>&1; then
+ if ! _scratch_mkfs_xfs >>$seq.full 2>&1; then
_notrun "mkfs does not support v2 logs"
fi