[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <t2w1ba2fa241004211522le49fc938m341553b0f2b89031@mail.gmail.com>
Date: Thu, 22 Apr 2010 01:22:51 +0300
From: Tomas Winkler <tomasw@...il.com>
To: Greg KH <greg@...ah.com>
Cc: Johannes Berg <johannes@...solutions.net>,
Kay Sievers <kay.sievers@...y.org>,
David Woodhouse <dwmw2@...radead.org>,
"Rafael J. Wysocki" <rjw@...k.pl>,
Emmanuel Grumbach <egrumbach@...il.com>,
linux-kernel@...r.kernel.org
Subject: Re: request_firmware API exhaust memory
On Mon, Apr 19, 2010 at 5:59 PM, Greg KH <greg@...ah.com> wrote:
> On Mon, Apr 19, 2010 at 03:20:34PM +0300, Tomas Winkler wrote:
>> Lately we've been developing a device that rather more extensively
>> used request_firmware API in load and also using pm_notifiers to load
>> firmware.
>
> Do you have a pointer to your driver source anywhere that shows how you
> are trying to use the firmware api in this manner?
I've attached a very simple test driver I'm using. Just wanted to
eliminate anything else.
Bellow is a little script that loads and releases the firmware. My
previous observation was wrong.
The free memory gradually decreases regardless of number or dangling
udevd forks, which are eventually collected if the sleep period is
long enough ~10s.
testfw=${1:-test-fw600k.fw}
count=${2:-100}
s=${3:-10}
for ((i=0; i<$count ; i++)) ; do
echo -n $testfw > /sys/devices/platform/fw-test/load_fw
echo -n 1 > /sys/devices/platform/fw-test/release_fw
sleep $s
grep MemFree /proc/meminfo | awk '{print $2}'
ps auxwww | grep udevd | wc -l
done
Thanks
Tomas
Download attachment "fw-test.c" of type "application/octet-stream" (3305 bytes)
Powered by blists - more mailing lists