Subject: Re: problems with insmod ...

From: Ralf Baechle <[email-masked]>
Date: Tue, 24 Oct 2000 03:18:28 +0200

On Mon, Oct 23, 2000 at 06:08:35PM -0700, Jun Sun wrote:

> > > Jun Sun <[email-masked]> wrote:
> > > >I tried with 2.3.19, and now I am having problem with out of bound index
> > > >in symbol table.  See the output below.
> > > >
> > > >---------
> > > >sh-2.03# insmod hello.o
> > > >hello.o: local symbol gcc2_compiled. with index 10 exceeds
> > > >local_symtab_size 10
> > > >hello.o: local symbol __gnu_compiled_c with index 11 exceeds
> > > >local_symtab_size 10
> > > >---------
> > >
> > > It is a toolchain bug, I think it is in the assembler.  I have a dim
> > > distant memory from about a month ago that somebody on linux-mips found
> > > the problem.  Ask the toolchain experts.
> > 
> > It's a bug bug in ld, one in BFD and a sillyness in IRIX ELF which the linker
> > uses.  IRIX ELF uses different sorting rules for the symbol table, see
> > mips_elf_sym_is_global in bfd/elf32-mips.c.
> > 
> >  - Bug one: ld generated output should follow the same rules as assembler
> >    generated output.
> >  - Bug two is more a design flaw - why does Linux/MIPS and most other
> >    MIPS ELF configurations use IRIX and not ABI ELF?
> >  - Bug three is that mips_elf_sym_is_global applies these IRIX ELF sorting
> >    rules even to ABI ELF.
> > 
> >   Ralf
> 
> This sounds like a serious problem to me.  So here are the questions : 
> 
> 1) is it fixed in the latest binutils?

No, all binutils ever are affected.

> 2) is it worth fixed for binutil v2.8.1?

Probably not.  I believe modulo some testing current CVS binutils are ready
for more serious use than just binutils fixing.  In any case fixing should
be easy.

  Ralf

--OgqxwSJOaUobr8KG--