Re: Recursive chmod/chown OOM kills box with 32MB RAM

From: Hans Reiser
Date: Wed Feb 01 2006 - 02:40:17 EST


Denis Vlasenko wrote:

>On Monday 30 January 2006 15:22, Chris Mason wrote:
>
>
>>On Monday 30 January 2006 01:11, Hans Reiser wrote:
>>
>>
>>>Chris, would Denis Vlasenko wrote:
>>>
>>>
>>>>[CCing namesys]
>>>>
>>>>Narrowed it down to 100% reproducible case:
>>>>
>>>> chown -Rc 0:<n> .
>>>>
>>>>in a top directory of tree containing ~21938 files
>>>>on reiser3 partition:
>>>>
>>>> /dev/sdc3 on /.3 type reiserfs (rw,noatime)
>>>>
>>>>causes oom kill storm. "ls -lR", "find ." etc work fine.
>>>>
>>>>I suspected that it is a leak in winbindd libnss module,
>>>>but chown does not seem to grow larger in top, and also
>>>>running it under softlimit -m 400000 still causes oom kills
>>>>while chown's RSS stays below 4MB.
>>>>
>>>>
>>In order for the journaled filesystems to make sure the FS is consistent after
>>a crash, we need to keep some blocks in memory until other blocks have been
>>written. These blocks are pinned, and can't be freed until a certain amount
>>of io is done.
>>
>>In the case of reiserfs, it might pin as much as the size of the journal at
>>any time. The default journal is 32MB, which is much too large for a system
>>with only 32MB of ram.
>>
>>You can shrink the log of an existing filesystem. The minimum size is 513
>>blocks, you might try 1024 as a good starting poing.
>>
>>reiserfstune -s 1024 /dev/xxxx
>>
>>The filesystem must be unmounted first.
>>
>>
>
>Will try this and report the result.
>
>Please consider printing a big fat warning at mount time if total RAM
>on the system is close to sum of RAM space required for all currently
>mounted reiserfs partitions...
>--
>vda
>
>
>
>
I already suggested this to Chris.;-) I agree.

Best,

Hans
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/