On 04/19/2012 11:45 AM, Dalleau, Frederic wrote:
Hi David,

On Thu, Apr 19, 2012 at 10:54 AM, David Henningsson
<[email protected]>  wrote:
Nowadays, we are using more hashmaps and other things, than we did
before. Therefore, I often get the "flist is full (don't worry)"
message. This change should avoid that message. I was unable to find
any significance in increase of memory footprint from this change.

I'm unsure whether this is the right solution to the problem.

 From my understanding, the flist is used to store pointer to to-be-freed
memory in order to reuse it later instead of calling pairs of xfree/xmalloc.
Increasing the flist size would allow you to store more pointers and
not free them, this is useless.

However, you should really worry about why a specific flist is full
since this means
more than 128 pointer of the same type have been freed in a row
without a single allocation.

Ok, so I did some more research. I also found a slightly better scenario.
The scenario is that I have my USB headset plugged in, I start pulseaudio, and when pulseaudio is running, I unplug my headset.

This leads to 472 entries inserted into the "hashmap" flist.
311 of these belong to module-dbus-protocol.so.
113 is coming from pa_proplist_free - the card proplist has 21 entries, the sink and source proplists have 35, the sink monitor's has 20.

Those are the biggies, it seems like.
Given this research, what do you suggest?

--
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to