[uClibc] Re: uclibc and heap randomisation (ET_EXEC)

Joakim Tjernlund joakim.tjernlund at lumentis.se
Tue Aug 31 09:27:50 UTC 2004


> > Did some checking in uClibc and it seems like all arches declare __curbrk to be NULL initilized,
> > except PPC and alpha which uses .comm in assembler to declare __curbrk and i don't know if .comm
> > implies it it should be zero
> > 
> > Almost all arches(not SPARC and ARM) tests if __curbrk is zero and if so 
> > does __curbrk = brk(0). 
> > 
> > Seems to me that the __curbrk stuff in ldso can go iff ARM and SPARC is fixed.
> > 
> > Possibly one could do __curbrk = brk(0) in ldso instead. Assuming the
> > static case is fixed in a similar way, all that testing in (s)brk() of
> > __curbrk being NULL could go.
> > 
> > I think Erik will have sort this out, I am in no way a (s)brk() expert.
> > 
> > To test, could somebody check if procps still works after removing the
> > __curbrk(but keeping the __environ) stuff in ldso.c?
> 
> I have built procps-2.0.17 w/ only __environ (x86), running:
> ps, top, slabtop, pmap, uptime, free works.
> 
> Specific tests needed?

Don't know, but since Eric just removed the __curbrk stuff from ldso we
will soon find out :)

I still not sure that SPARC and ARM's brk() will work as expected, can you
test?

   Jocke



More information about the uClibc mailing list