4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-02-21 00:07:36 +08:00

Cygwin: sparse support: enable automatic sparsifying of files on SSDs

Given that SSDs don't have a seek penalty, we can enable
automatic sparsifying of files on SSDs, even if the "sparse"
mount option is not set.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
Corinna Vinschen 2023-11-30 22:36:35 +01:00
parent 8b01c5d690
commit 832e91422c
4 changed files with 11 additions and 2 deletions

View File

@ -174,8 +174,8 @@ class path_conv
bool isgood_inode (ino_t ino) const;
bool support_sparse () const
{
return (mount_flags & MOUNT_SPARSE)
&& (fs_flags () & FILE_SUPPORTS_SPARSE_FILES);
return (fs_flags () & FILE_SUPPORTS_SPARSE_FILES)
&& (fs.is_ssd () || (mount_flags & MOUNT_SPARSE));
}
int has_dos_filenames_only () const {return mount_flags & MOUNT_DOS;}
int has_buggy_reopen () const {return fs.has_buggy_reopen ();}

View File

@ -55,3 +55,6 @@ What changed:
https://www.austingroupbugs.net/view.php?id=1674
- FIFOs now also work over NFS.
- Enable automatic sparsifying of files on SSDs, independent of the
"sparse" mount mode.

View File

@ -82,6 +82,11 @@ New API call: fallocate (Linux-specific).
FIFOs now also work over NFS.
</para></listitem>
<listitem><para>
Enable automatic sparsifying of files on SSDs, independent of the
"sparse" mount mode.
</para></listitem>
</itemizedlist>
</sect2>

View File

@ -1933,6 +1933,7 @@ D: on /d type fat (binary,user,noumount)
(default).
sparse - Switch on support for sparse files. This option only makes
sense on NTFS and then only if you really need sparse files.
This flag is always silently enabled on SSD drives.
text - Files default to CRLF text mode line endings.
</screen>