Christian Franke wrote: > Jon Turney wrote: >> On 14/01/2024 16:07, Christian Franke wrote: >>> Recently I learned about the existence and usefulness of close_range(): >>> https://github.com/smartmontools/smartmontools/issues/235 >>> >>> https://man.freebsd.org/cgi/man.cgi?query=close_range&sektion=2 >>> https://man7.org/linux/man-pages/man2/close_range.2.html >>> >>> Note that the above Linux man page is not fully correct. The include >>> file "linux/close_range.h" exists, but provides only the defines. It >>> is sufficient to include "unistd.h" as on FreeBSD. >>> >>> The attached patch adds this to Cygwin. It does not implement the >>> Linux-specific CLOSE_RANGE_UNSHARE as I have no idea how to do this :-) >> >> This API should also be mentioned in the >> "System interfaces compatible with GNU or Linux extensions" section >> of doc/posix.xml >> >> > > Thanks for the info. I used the recent "Cygwin: introduce > fallocate(2)" patch as a blueprint for which other files should be > changed (fallocate is also missing in the posix.xml file). > > I will provide a new patch soon which also fixes an unlikely but > possible corner case: Pass a value larger than MAX_INT as lower limit. > Attached. I also decided to simply ignore CLOSE_RANGE_UNSHARE for now.