This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Huge dynamically linked program does not run on mips-linux


On Wed, Oct 29, 2003 at 10:14:00AM -0800, Jun Sun wrote:
> On Wed, Oct 29, 2003 at 04:32:01PM +0900, Atsushi Nemoto wrote:
> > >>>>> On Wed, 22 Oct 2003 17:11:18 +0900 (JST), Atsushi Nemoto <anemo@mba.ocn.ne.jp> said:
> > anemo> I have a problem that my huge dynamically linked program cause
> > anemo> SIGSEGV or SIGBUS immediately after running from main() on
> > anemo> mips-linux.
> > 
> > anemo> Digging into this problem, I found that GOT entries are
> > anemo> corrupted.
> > ...
> > anemo> My program is huge enough so that older binutils causes
> > anemo> "relocation truncated to fit" error.
> > 
> > More information.  My program's .got size exceeds 64K.  It seems the
> > corruption does not happen if .got size is smaller then 64K.
> > 
> > $ mips-linux-readelf -e myapp
> > ...
> > Section Headers:
> >   [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
> > ...
> >   [21] .got              PROGBITS        100b15d0 a075d0 013a04 04 WAp  0   0 16
> > 
> 
> Isn't this a known problem in binutils?  IIRC, someone is working or has
> added "--big-got" support.

Atsushi-san's program would not even link with a binutils that didn't
support multiple GOTs; I guess that something is going wrong with that
support.

I don't suppose you could provide a testcase?

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]