[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pdns-dev
Subject:    Re: [Pdns-dev] PowerDNS Recursor 3.1.5 snapshot 3 available
From:       bert hubert <bert.hubert () netherlabs ! nl>
Date:       2008-02-12 21:30:50
Message-ID: 20080212213050.GC5002 () outpost ! ds9a ! nl
[Download RAW message or body]

On Tue, Feb 12, 2008 at 09:23:43PM +0000, James Cloos wrote:

> bert> Can you rerun with --stack-size=1000000 to see if the problem goes away?
> 
> That does prevent the SEGV.  A binary search turned up 262053 as the
> minimum stack-size to prevent the SEGV.

glibc-2.7 must be wasting stack size somehow. I'll see if I can relay this
to the powers that be.

> I'm letting the installed version run now with stack-size=262144 in the
> recursor.conf.  It seems to be happy.

I'd raise that to 300000 - extra memory is needed when entering deep
recursion loops.

> bert> Could you try valgrind? It might also have relevant things to say.
> 
> Using no valgrind options (therefore the memcheck tool), this is the
> interesting output:
> 
> ==20378== Invalid write of size 4
> ==20378==    at 0x41D0BEF: makecontext (in /lib/libc-2.7.so)
> ==20378==    by 0x809E225: serviceMain(int, char**) (pdns_recursor.cc:1744)
> ==20378==    by 0x80A380E: main (pdns_recursor.cc:1908)
> ==20378==  Address 0x4326310 is 8 bytes after a block of size 200,000 alloc'd
> ==20378==    at 0x4023F04: operator new[](unsigned) (vg_replace_malloc.c:268)

Spot on! 200,000 is the default stack size.

> I'll test it out some more in valgrind and post if anything interesting
> shows up.

The diagnosis is in - what remains to be figured out is why glibc 2.7
needs so much stack..

Thanks for the testing James!

	Bert

-- 
http://www.PowerDNS.com      Open source, database driven DNS Software 
http://netherlabs.nl              Open and Closed source services
_______________________________________________
Pdns-dev mailing list
Pdns-dev@mailman.powerdns.com
http://mailman.powerdns.com/mailman/listinfo/pdns-dev
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic