Messages in this thread | | | From | Denis Vlasenko <> | Subject | Re: Recursive chmod/chown OOM kills box with 32MB RAM | Date | Thu, 2 Feb 2006 09:25:00 +0200 |
| |
On Monday 30 January 2006 15:22, Chris Mason wrote: > > > 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. > > 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
I had reiserfsprogs 3.6.11 and reiserfstune (above command) made my /dev/sdc3 unmountable without -t reiserfs. I upgraded reiserfsprogs to 3.6.19 and now reiserfsck /dev/sdc3 reports no problems, but mount problem persists:
# mount -t reiserfs /dev/sdc3 /.3 # umount /.3 # mount /dev/sdc3 /.3 mount: you must specify the filesystem type # dmesg | tail -3 br: port 1(ifi) entering forwarding state FAT: bogus number of reserved sectors VFS: Can't find a valid FAT filesystem on dev sdc3.
"chown -Rc <n>:<m> ." now does not OOM kill the box, so this issue is resolved, thanks!
Can I restore sdc3 somehow that I won't need -t reiserfs in mount command? You can find result of
dd if=/dev/sdc3 of=1m bs=1M count=1
at http://195.66.192.167/linux/1m -- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |