two 4GB mallocs => SEGV

Willem Jan Withagen wjw at withagen.nl
Tue Oct 26 06:42:13 PDT 2004


Peter Pentchev wrote:
[snip]

>>>>>on a freebsd amd64 box with more than 8GB swap i experience the 
>>>>>following:

This is of course where strange things start. This should not be possible when 
al things are as suggested. 2*4G allocs should work.

[more snip]
>>>>what does swapinfo tell you during the the run of the program???

So what that tell you...

BTW. I ran the program with 3*2Gb alloc (I got 4GB and 5Gb swap)
malloc.conf -> XZ => Give text warnings, and zero everything

But still I get:
[/tmp] root at opteron> ./a.out
80000000
503000
80503000
100503000

And no further text. So this is consistent with previous findings that the 
text gets lost somewhere... But it does not dump core??? where X would tell it 
to do so.

> I looked at the source before posting that - src/lib/libc/stdlib/malloc.c,
> and the handling of malloc_xmalloc invokes wrterror(), which writes to
> stderr before aborting.

Oke, should be correct then?

>>I think that std-malloc settings were AX for anything before -STABLE.

> Actually they were 'AJ', not 'AX', and they were turned off on Sep 7 for
> RELENG_5.  Georgi's uname shows 5.3-BETA6, which was cut about Sep 23,
> so neither 'J' nor 'X' ought to be set by default.

could very well be so.

> Still, Georgi, can you check if you have a MALLOC_OPTIONS variable or
> a /etc/malloc.conf symlink?

I've found that settings not always worked the way I fully expected them.
Still got a test for 0xdeaddead in a program which explicitly sets Z in its 
malloc-settings

--WjW



More information about the freebsd-amd64 mailing list