Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/winsup
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2024-01-15 13:03:48 +0300
committerCorinna Vinschen <corinna@vinschen.de>2024-01-15 13:04:29 +0300
commit4ecfb5b7292af4baf0a2f199f5351b67c8faf4cc (patch)
tree2b9c913b50002afcedf7aa8415c5331508bb9753 /winsup
parent241b50a7abe25fc017f36eeb8704199f48d0b404 (diff)
Cygwin: api docs: add missing fallocate
Also add notes in terms of fallocate quirks. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'winsup')
-rw-r--r--winsup/doc/posix.xml9
1 files changed, 9 insertions, 0 deletions
diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml
index 151aeb9fe..1a4eee1ab 100644
--- a/winsup/doc/posix.xml
+++ b/winsup/doc/posix.xml
@@ -1314,6 +1314,7 @@ also IEEE Std 1003.1-2017 (POSIX.1-2017).</para>
exp10
exp10f
exp10l
+ fallocate (see <xref linkend="std-notes">chapter "Implementation Notes"</xref>)
fcloseall
fcloseall_r
fedisableexcept
@@ -1755,6 +1756,14 @@ RLIMIT_CORE and RLIMIT_STACK return the current values and set the requested
values.
All other resource arguments return -1 and set EINVAL.</para>
+<para><function>fallocate</function> has a few Windows quirks: The
+FALLOC_FL_ZERO_RANGE operation is NOT atomic. With flags set to 0 and
+FALLOC_FL_KEEP_SIZE, sparse blocks in the given range are re-allocated
+as per the POSIX requirements. This re-allocation operation isn't
+atomic either. Over-allocation with FALLOC_FL_KEEP_SIZE is only
+temporary on Windows until the last handle to the file is closed.
+Over-allocation on sparse files is entirely ignored on Windows.</para>
+
</sect1>
</chapter>