Re: [PATCH] fs: make generic_block_fiemap sig-tolerant PING2...

From: Dmitry Monakhov
Date: Wed Dec 10 2014 - 08:49:58 EST



Hello. Someone please take care of this patch.

W/o that patch unprivileged user may abuse system resources simply by spawning
wast number of unkilable busyloops (works on ext2/ext3):

truncate --size 1T test
for ((i=0;i<1024;i++))
do
filefrag test > /dev/null &
done

Dmitry Monakhov <dmonakhov@xxxxxxxxxx> writes:
> Andrew can you please get this patch. IMHO it is simple and clean.
> BTW:
>
>> __generic_block_fiemap may spin very long time for large sparse files.
>>
>> Signed-off-by: Dmitry Monakhov <dmonakhov@xxxxxxxxxx>
>> ---
>> fs/ioctl.c | 5 +++++
>> 1 files changed, 5 insertions(+), 0 deletions(-)
>>
>> diff --git a/fs/ioctl.c b/fs/ioctl.c
>> index 8ac3fad..6fbeb68 100644
>> --- a/fs/ioctl.c
>> +++ b/fs/ioctl.c
>> @@ -379,6 +379,11 @@ int __generic_block_fiemap(struct inode *inode,
>> past_eof = true;
>> }
>> cond_resched();
>> + if (fatal_signal_pending(current)) {
>> + ret = -EINTR;
>> + break;
>> + }
>> +
>> } while (1);
>>
>> /* If ret is 1 then we just hit the end of the extent array */
>> --
>> 1.7.1

Attachment: signature.asc
Description: PGP signature