Commit 3581e5f
committed
ignore FS_IOC_FIEMAP failure with ENOTSUPP
Lustre 2.15.6 can return ENOTSUPP (524) in response to an FS_IOC_FIEMAP
ioctl() call, for a file striped a certain way. This is a bug, it
should return EOPNOTSUPP (95).
The file can still be copied, fiemap just can't tell us where the holes
are.
A brief survey using google searches suggests ENOTSUPP (524) was
historically intended for use internal to the kernel or drivers, but has
occasionally been returned to users by different software, in ways that
have meaning similar to ENOTSUP.
Ignore the error as with ENOTSUP (95) so the file is copied without the
use of fiemap.
Notify the user that the copied file is not sparse.
Fixes #644
Signed-off-by: Olaf Faaland <[email protected]>1 parent 55f9aa5 commit 3581e5f
2 files changed
+8
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
23 | 27 | | |
24 | 28 | | |
25 | 29 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
| 60 | + | |
60 | 61 | | |
61 | 62 | | |
62 | 63 | | |
| |||
1933 | 1934 | | |
1934 | 1935 | | |
1935 | 1936 | | |
1936 | | - | |
1937 | | - | |
| 1937 | + | |
| 1938 | + | |
| 1939 | + | |
1938 | 1940 | | |
1939 | 1941 | | |
1940 | 1942 | | |
| |||
0 commit comments