[PATCH] ldso: use _dl_pagesize for library-loading addresses and offsets
Jeremy Kerr
jk at ozlabs.org
Tue Nov 25 23:35:07 UTC 2008
Hi Bernhard,
> >- maxvma = (maxvma + ADDR_ALIGN) & ~ADDR_ALIGN;
> >+ addr_align = _dl_pagesize - 1;
> >+ page_align = ~addr_align;
> >+ offs_align = page_align & ~(1 << 31);
>
> This would brake _MIPS_SIM_ABI64, wouldn't it.
Ah, yep. I was making invalid assumptions about the sign bit.
> >+
> >+ maxvma = (maxvma + addr_align) & ~addr_align;
>
> This should perhaps read
> maxvma = (maxvma + ADDR_ALIGN) & PAGE_ALIGN;
> for consistency.
Ok, will do that as a separate change.
> Please adjust the per arch dl-sysdep.h defines instead (which you
> didn't remove, btw), something like the attached, untested patchlet.
I trying for something a little less intrusive for my first uClibc
patch, but if replacing the _ALIGN macros completely is okay, I'll do
that.
I'm doing a new patch - since (almost) all of the arch-specific _ALIGN
macros are identical now, we can merge them into ldso.h, and allow
arches to override when necessary. Patches coming.
Cheers,
Jeremy
More information about the uClibc
mailing list