diff options
author | Pádraig Brady <P@draigBrady.com> | 2014-10-06 10:19:58 +0100 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2014-10-15 02:19:37 +0100 |
commit | eafa6ebf10924ec36cb5d28fd9d97a23de089bd0 (patch) | |
tree | 3ee55b7ececa569a813bad821b24ce1f9918a3fa /m4/jm-macros.m4 | |
parent | 759b0ac9e7f3fbd0f04090e3142087bf692e47bc (diff) | |
download | coreutils-eafa6ebf10924ec36cb5d28fd9d97a23de089bd0.tar.xz |
cp: avoid speculative preallocation with --sparse=always
With --sparse=always use fallocate(...PUNCH_HOLE...) to
avoid any permanent allocation due to speculative
preallocation employed by file systems such as XFS.
* m4/jm-macros.m4: Check for <linux/falloc.h> and fallocate().
* src/copy.c (punch_hole): A new function to try and punch
a hole at the specified offset if supported.
(create_hole): Call punch_hole() after requesting a hole.
(extent_copy): Likewise.
* NEWS: Mention the improvement.
Diffstat (limited to 'm4/jm-macros.m4')
-rw-r--r-- | m4/jm-macros.m4 | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/m4/jm-macros.m4 b/m4/jm-macros.m4 index a96ecabb6..07b90850c 100644 --- a/m4/jm-macros.m4 +++ b/m4/jm-macros.m4 @@ -78,6 +78,7 @@ AC_DEFUN([coreutils_MACROS], AC_CHECK_FUNCS_ONCE([ endgrent endpwent + fallocate fchown fchmod ftruncate @@ -189,6 +190,7 @@ AC_DEFUN([gl_CHECK_ALL_HEADERS], [ AC_CHECK_HEADERS_ONCE([ hurd.h + linux/falloc.h paths.h priv.h stropts.h |