When testing arm machine, this case fails because ps > bs and kernel doesn't introduced commit c8cc88163f40 ("ext4: Add support for blocksize < pagesize in dioread_nolock"). Only skip this case when kernel complains about bs!=ps error, so we can find dioread_nolock mount regression in the future. Signed-off-by: Yang Xu <xuyang2018.jy@xxxxxxxxxxxxxx> --- tests/ext4/046 | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/ext4/046 b/tests/ext4/046 index 5524024e..c6f7a051 100755 --- a/tests/ext4/046 +++ b/tests/ext4/046 @@ -31,13 +31,22 @@ _cleanup() # remove previous $seqres.full before test rm -f $seqres.full +_require_check_dmesg _supported_fs ext4 _require_scratch _require_xfs_io_command "falloc" _require_scratch_size $((6 * 1024 * 1024)) #kB _scratch_mkfs >> $seqres.full 2>&1 -_scratch_mount "-o dioread_nolock" >> $seqres.full 2>&1 +if ! _try_scratch_mount "-o dioread_nolock" >> $seqres.full 2>&1; then + err_str="can't mount with dioread_nolock if block size != PAGE_SIZE" + _check_dmesg_for ${err_str} + if [ $? -eq 0 ]; then + _notrun "mount failed, ext4 doesn't support bs < ps with dioread_nolock" + else + _fail "mount failed with dioread_nolock" + fi +fi # Get blksz blksz=$(_get_file_block_size $SCRATCH_MNT) -- 2.23.0