[maemo-users] [maemo-users] bug #978: metalayer-crawler

From: Eero Tamminen eero.tamminen at nokia.com
Date: Tue Feb 6 19:07:32 EET 2007

ext Laurent MARTIN wrote:
>> And the script doesn't report any media files being open from
>> the crawler although it takes most of CPU?
> Well, I don't know exactly what the script was supposed to do.

It lists from the /proc/ at 5 sec intervals what files the crawler
process(es) have open.

> Maybe interesting: I've just tested and the original metalayer-crawler0 is 
> taking 85% of the CPU (and ~82Mb of RAM!) even when the SD card is removed.
> I've just checked the SD card on my Linux box using fsck: no problem 
> reported.

Ok, so the problem can be replicated even without the card FAT being
corrupted.  I think the reason for the large CPU usage is that kernel
is denying the memory allocs to the process because it uses too much
memory and instead of aborting the operation, the crawler re-tries
the operation.  And while its doing that, it doesn't acknowledge
the card removal.

When I earlier tested with corrupted FAT, the memory usage went 
eventually down if I removed the card before crawler bumbed into
the memory denial limit.

Now, the interesting question is what in your MMC contents triggers
this huge memory usage...  Let's add to the script output also
the (first crawler) process memory usage and let's check only
files opened from the card(s):
while true; do
   pid=$(pidof metalayer-crawler|cut -d' ' -f1);
   ls -l /proc/$pid/fd/|grep media/;
   grep RSS /proc/$pid/status;
   echo ===sleep===; sleep 2;

	- Eero

More information about the maemo-users mailing list