RFC: should lseek(SEEK_DATA/SEEK_HOLE) return ENOTTY?
Rick Macklem
rmacklem at uoguelph.ca
Sun Aug 11 02:03:14 UTC 2019
Hi,
I've noticed that, if you do a lseek(SEEK_DATA/SEEK_HOLE) on a file that
resides in a file system that does not support holes, ENOTTY is returned.
This error isn't listed for lseek() and seems a liitle weird.
I can see a couple of alternatives to this:
1 - Return a different error. Maybe ENXIO?
or
2 - Have lseek() do the trivial implementation when the VOP_IOCTL() fails.
- For SEEK_DATA, just return the offset given as argument and for SEEK_HOLE
return the file's size as the offset.
What do others think? rick
ps: The man page should be updated, whatever is done w.r.t. this.
More information about the freebsd-current
mailing list