summaryrefslogtreecommitdiff
path: root/Documentation/filesystems
diff options
context:
space:
mode:
authorDmitry Monakhov <dmonakhov@openvz.org>2015-02-10 14:09:29 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2015-02-10 14:30:30 -0800
commit913e027ca17ee06fa9436a21e54464795b0fa0e8 (patch)
treed583200d611573204224ac54bb7f7f1a633950ef /Documentation/filesystems
parent99b8874e79619498ade354357f64299768642af6 (diff)
downloadlinux-rpi3-913e027ca17ee06fa9436a21e54464795b0fa0e8.tar.gz
linux-rpi3-913e027ca17ee06fa9436a21e54464795b0fa0e8.tar.bz2
linux-rpi3-913e027ca17ee06fa9436a21e54464795b0fa0e8.zip
fsioctl.c: make generic_block_fiemap() signal-tolerant
__generic_block_fiemap may spin very long time for large sparse files. Without this patch an unprivileged user may abuse system resources simply by spawning a vast number of unkilable busyloops (works on ext2/ext3): truncate --size 1T test for ((i=0;i<1024;i++)) do filefrag test > /dev/null & done Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org> Cc: Theodore Ts'o <tytso@mit.edu> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation/filesystems')
-rw-r--r--Documentation/filesystems/fiemap.txt3
1 files changed, 2 insertions, 1 deletions
diff --git a/Documentation/filesystems/fiemap.txt b/Documentation/filesystems/fiemap.txt
index 1b805a0efbb0..f6d9c99103a4 100644
--- a/Documentation/filesystems/fiemap.txt
+++ b/Documentation/filesystems/fiemap.txt
@@ -196,7 +196,8 @@ struct fiemap_extent_info {
};
It is intended that the file system should not need to access any of this
-structure directly.
+structure directly. Filesystem handlers should be tolerant to signals and return
+EINTR once fatal signal received.
Flag checking should be done at the beginning of the ->fiemap callback via the