mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
common/rc: handle the case when syscall isn't available
_require_xfs_io_command() isn't handling the case where the requested syscall isn't available. To fix this simply check the error returned by xfs_io. Usually the userspace should be synced with kernelspace, the case that a syscall is supported by userspace tool but not kernelspace should not happen, but in rare test setups it's possible, e.g. building an initramfs that contains the testing tools from a recent distro, and running the tests against an old kernel (which does not include such syscall). [ eguan: it's not copy_file_range syscall specific issue, update summary and commit log, and provide more background information ] Signed-off-by: Luis Henriques <lhenriques@suse.com> Reviewed-by: Eryu Guan <eguan@redhat.com> Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
committed by
Eryu Guan
parent
591b5d75b8
commit
82012736f7
@@ -2195,6 +2195,8 @@ _require_xfs_io_command()
|
||||
_notrun "xfs_io $command failed (old kernel/wrong fs/bad args?)"
|
||||
echo $testio | grep -q "foreign file active" && \
|
||||
_notrun "xfs_io $command not supported on $FSTYP"
|
||||
echo $testio | egrep -q "Function not implemented" && \
|
||||
_notrun "xfs_io $command support is missing (missing syscall?)"
|
||||
|
||||
if [ -n "$param" -a $param_checked -eq 0 ]; then
|
||||
$XFS_IO_PROG -c "help $command" | grep -q "^ $param --" || \
|
||||
|
||||
Reference in New Issue
Block a user