[Commotion-dev] Stress test results

Dan Staples danstaples at opentechinstitute.org
Tue Nov 12 15:12:25 UTC 2013


Paul,

We haven't yet tested (or merged) the memory leak fix, but we'll be sure
to report any difference that makes.

The only program we have that uses libservald is the serval-crypto
program we wrote for app advertising. We definitely saw serval-crypto's
uses of libservald lead to low memory conditions and crashes at the
Wireless Summit, so that's a good suggestion. Will, were there any apps
on the mesh when you saw the node crash?

I'm beginning the process of writing the serval plugin for commotiond
that will allow us to only package libservald and not the daemon, which
will at least save disk space, and hopefully less memory use as well.

Dan

On 11/12/2013 12:00 AM, Paul Gardner-Stephen wrote:
> Hi Will,
> 
> Have you tried it with the recent servald update that fixed a few memory
> leaks?
> 
> As for high load generating malloc() activity in servald, it would need
> to be activity that touches servald in some way (obvious and direct or
> otherwise).  It will also be interesting to know if it is in servald or
> libserval being used by another application.  Are you able to repeat the
> test with servald not running, and see whether it still happens?
> 
> Paul.
> 
> 
> On Tue, Nov 12, 2013 at 11:23 AM, Will Hawkins
> <hawkinsw at opentechinstitute.org <mailto:hawkinsw at opentechinstitute.org>>
> wrote:
> 
>     Using go (yes, that's right!) I was able to create a test program that
>     opened enough simultaneous HTTP connections to force a crash.
> 
>     Thanks to the fact that we were running a serial console that was
>     logging Pico station console output, we were able to capture the crash
>     information. I am attaching that here.
> 
>     Overall, it looks like the node simply runs out of memory. The first
>     errors are when malloc()s in servald fail Then, when things get really
>     bad, there are errors from the wireless driver saying that it cannot
>     allocate buffer space.
> 
>     Obviously the failures from the wireless driver are bad. They are
>     probably ultimately what causes the node to reboot.
> 
>     I wonder, though, about the servald malloc() failures. I'm not sure if
>     they are pure symptom (i.e, servald just happens to be the application
>     most commonly allocating memory space when the crash happens and so its
>     malloc()s fail first), or if it is part of the problem (i.e, servald
>     causes memory usage to skyrocket under heavy load and *then* these
>     larger memory problems start to occur).
> 
>     In any event, we got some logs, which is a good first step!
> 
>     Will
> 
>     _______________________________________________
>     Commotion-dev mailing list
>     Commotion-dev at lists.chambana.net
>     <mailto:Commotion-dev at lists.chambana.net>
>     https://lists.chambana.net/mailman/listinfo/commotion-dev
> 
> 
> 
> 
> _______________________________________________
> Commotion-dev mailing list
> Commotion-dev at lists.chambana.net
> https://lists.chambana.net/mailman/listinfo/commotion-dev
> 

-- 
Dan Staples

Open Technology Institute
https://commotionwireless.net
OpenPGP key: http://disman.tl/pgp.asc
Fingerprint: 2480 095D 4B16 436F 35AB 7305 F670 74ED BD86 43A9


More information about the Commotion-dev mailing list