Include all nessecary headers, use the correct format strings and don't
redefine _GNU_SOURCE.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Sandeen <sandeen@sandeen.net>
There are two errors I see all the time in 145:
- dm_probe_hole returns EINVAL for offsets close to the file size
- dm_probe_hole wants EAGAIN for a probe at offset 1, length 0
The first error is a consequence of how the hole puching / probing
works. It always rounds the requested offset up to the next block
size and then checks if that rounded offset still fits into the file
size. Just do the same rounding in the testcase to make sure we don't
probe invalid offsets.
The second error is very odd to me, as we never return AGAIN in the
whole dm_probe_hole path. I've just commented it out.
I've also re-enabled the E2BIG to past-EOF test that was uncommented
before because it works perfectly fine now.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of master-melb:xfs-cmds:31330a by kenmcd.
fix XFSQA 145 / test_hole
Two really dumb bugs:
- "foo & 0x3FFFFFFFFFFFF" doesn't cap at 1TB, but rather at more than
two magnitudes larger than that. That gets us EFBIG with typical
32bit XFS setups.
- the command array can easily overflow and thus let the test fail
Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of master-melb:xfs-cmds:31327a by kenmcd.
Fix XFSQA test 144
Kill the output of uninitialised values when punching a hole.
This prevents the test from passing on just about everything.
Merge of master-melb:xfs-cmds:30762a by kenmcd.
remove roffp and rlenp output for punch operations.
EINVAL error. Fix u_char to char comparison. Print out hex instead of
char for nonprintable characters.
Merge of master-melb:xfs-cmds:27094a by kenmcd.
pv 955274 - Limit the offset passed to dm_write_invis() to the file size to avoid
EINVAL error. Fix u_char to char comparison. Print out hex instead of
char for nonprintable characters.
Merge of master-melb:xfs-cmds:27060a by kenmcd.
pv 955274 - Limit the random generated file size attribute to 1 TB (if size is too big the kernel panics)
attribute via dm_set_dmattr(). If the machine is too fast the ctime doesn't
change between create and dm_set_dmattr() and the test fails.
Merge of master-melb:xfs-cmds:26870a by kenmcd.
pv 955274, rv bnaujok - add 1sec delay between file creation and changing its
attribute via dm_set_dmattr(). If the machine is too fast the ctime doesn't
change between create and dm_set_dmattr() and the test fails.
atohan needs to verify that the string being passed in is actually a
valid hex string before it assumes that it's a file handle rather than
a file name.
PV 951244