diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2005-11-24 06:50:11 +0000 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2005-11-24 06:50:11 +0000 |
commit | 211d43d85efef5ad02691263d77e7ece19e09fb0 (patch) | |
tree | f459f2539b244351febeeb06f54eddad1df28f7b /ChangeLog | |
parent | 25719a33154f0c62ea9881f0c79ae312dd4cec7a (diff) | |
download | coreutils-211d43d85efef5ad02691263d77e7ece19e09fb0.tar.xz |
Improve performance a bit with src/copy.c.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 27 |
1 files changed, 26 insertions, 1 deletions
@@ -1,7 +1,32 @@ -2005-11-22 Jim Meyering <jim@meyering.net> +2005-11-23 Paul Eggert <eggert@cs.ucla.edu> * Version 6.0-cvs. + * src/copy.c: Improve performance a bit by optimizing away + unnecessary system calls and going to a block size of at least + 8192 (on normal hosts, anyway). This improved performance 5% on my + Debian stable host (2.4.27 kernel, x86, copying from root + ext3 file system to itself). + Include "buffer-lcm.h". + (copy_reg): Omit last argument. All callers changed. + Use xmalloc to allocate rather than trusting alloca + (which is unwise with large block sizes). + Declare locals more locally, if possible. + Use uintptr_t words instead of int words, for a bit more speed + when looking for null blocks on 64-bit hosts. + Optimize away reads of zero bytes on regular files. + In the typical case, insist on 8 KiB buffers, at least. + Avoid unnecessary extra call to fstat when checking for sparse files. + Avoid now-unnecessary cast to off_t, and "0L". + Avoid unnecessary test of *new_dst when checking for same owner + and group. + +2005-11-22 Paul Eggert <eggert@cs.ucla.edu> + + * src/remove.c (rm): Don't assume C99 for-loop syntax. + +2005-11-22 Jim Meyering <jim@meyering.net> + * src/remove.c (AD_push): Remove debugging cruft. * tests/rm/unread2 (rm): Change expected diagnostic, |