summaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2014-04-04 13:35:56 +0100
committerPádraig Brady <P@draigBrady.com>2014-04-05 01:56:07 +0100
commitb85eb8d6835e7665bf6151db070261b123c22f95 (patch)
tree1d0fc5d1ed45ab2f5bcc115c11e00258e5c20e1f /NEWS
parent217618e8bf10a09270291b9825f3181ed2f83dbf (diff)
downloadcoreutils-b85eb8d6835e7665bf6151db070261b123c22f95.tar.xz
shred: overwrite inode storage used by some file systems
* doc/coreutils.texi (shred invocation): Mention some reasons why clearing slack space might be useful. * src/shred.c (do_wipefd): Add initial writes for each pass for small regular files in case the storage for those is in the inode, and thus a larger write up to a block size would bypass that. Move the direct I/O control to... (dopass): ... here so we can avoid enabling it for these small initial writes. It's better to retry direct I/O for each pass anyway to handle the case where direct I/O is disabled for only the last portion of a file when the size is not a multiple of the block size. Note we don't avoid the sync for the initial write as it will be small but more importantly could be on a different part of the disk and so worth doing independently to ensure the write is not discarded. * tests/misc/shred-exact.sh: Check some more direct I/O cases. * NEWS: Mention the improvements. The inode storage issue was mentioned by Paul Eggert.
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS4
1 files changed, 3 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index c6451b289..06e78a7a9 100644
--- a/NEWS
+++ b/NEWS
@@ -58,7 +58,9 @@ GNU coreutils NEWS -*- outline -*-
in case the look-up within the chroot fails due to library conflicts etc.
shred now supports multiple passes on GNU/Linux tape devices by rewinding
- the tape before each pass. Also redundant writes to empty files are avoided.
+ the tape before each pass, avoids redundant writes to empty files,
+ uses direct I/O for all passes where possible, and attempts to clear
+ inode storage used for small files on some file systems.
split avoids unnecessary input buffering, immediately writing input to output
which is significant with --filter or when writing to fifos or stdout etc.