mpifileutils
mpifileutils copied to clipboard
fiemap error
Getting the following error when source is Lustre and I request spare support (-S)
[2023-01-30T21:48:23] [1] [/home/harms/working/daos/mpifileutils/src/common/mfu_flist_copy.c:1853] ERROR: fiemap ioctl() failed for src '/soft/daos/mpifileutils/share/man/man1/dsync.1' (errno=22 Invalid argument)
I'm thinking this is because the structure initialization for the ioctl is bad. Running the following Lustre version:
harms@uan-0002:~/working/daos/tools> lfs --version
lfs 2.15.0.6_rc2_cray_14_g2408acc
I don't know if Lustre is strict about maintaining format of ioctl calls between different releases.
This looks like it might be https://jira.whamcloud.com/browse/LU-16480 which fixes a bug in the FIEMAP handling. This needs a small client-side patch to fix.
That said, if this code is using FIEMAP for determining sparseness of a file, it might be better to use lseek(fd, SEEK_HOLE)
since this also works for PFL files (otherwise Lustre will return EOPNOTSUPP
for FIEMAP calls).
The SEEK_HOLE/SEEK_DATA functionality was added in 2.14, but is a client-only patch.