[PATCH] ldso - removing unused warning and warning
Joakim Tjernlund
Joakim.Tjernlund at transmode.se
Tue Jan 27 07:46:33 UTC 2009
> olsajiri at gmail.com wrote:
> > Hi,
> >
> > found those while browsing the code.
> >
> > I'm not sure if reloc_type variable should be removed,
> > or similar check as in other platforms should be added.
> > eg for i386, smth like:
> >
> > if (unlikely(reloc_type != R_386_JMP_SLOT)) {
> > _dl_dprintf(2, "%s: Incorrect relocation type in jump
relocations\n",
> > _dl_progname);
> > _dl_exit(1);
> > }
> >
> > regards,
> > jirka
> >
> >
> > Signed-off-by: Jiri Olsa <olsajiri at gmail.com>
> >
> > Index: ldso/ldso/i386/elfinterp.c
> > ===================================================================
> > --- ldso/ldso/i386/elfinterp.c (revision 25005)
> > +++ ldso/ldso/i386/elfinterp.c (working copy)
> > @@ -47,7 +47,6 @@
> > unsigned long
> > _dl_linux_resolver(struct elf_resolve *tpnt, int reloc_entry)
> > {
> > - int reloc_type;
> > ELF_RELOC *this_reloc;
> > char *strtab;
> > Elf32_Sym *symtab;
> > @@ -60,7 +59,6 @@
> >
> > rel_addr = (char *)tpnt->dynamic_info[DT_JMPREL];
> > this_reloc = (ELF_RELOC *)(intptr_t)(rel_addr + reloc_entry);
> > - reloc_type = ELF32_R_TYPE(this_reloc->r_info);
> > symtab_index = ELF32_R_SYM(this_reloc->r_info);
> >
> > symtab = (Elf32_Sym *)(intptr_t)tpnt->dynamic_info[DT_SYMTAB];
> > Index: ldso/ldso/mips/elfinterp.c
> > ===================================================================
> > --- ldso/ldso/mips/elfinterp.c (revision 25005)
> > +++ ldso/ldso/mips/elfinterp.c (working copy)
> > @@ -87,7 +87,6 @@
> > unsigned long
> > __dl_runtime_pltresolve(struct elf_resolve *tpnt, int reloc_entry)
> > {
> > - int reloc_type;
> > ELF_RELOC *this_reloc;
> > char *strtab;
> > Elf32_Sym *symtab;
> > @@ -100,7 +99,6 @@
> >
> > rel_addr = (char *)tpnt->dynamic_info[DT_JMPREL];
> > this_reloc = (ELF_RELOC *)(intptr_t)(rel_addr + reloc_entry);
> > - reloc_type = ELF32_R_TYPE(this_reloc->r_info);
> > symtab_index = ELF32_R_SYM(this_reloc->r_info);
> >
> > symtab = (Elf32_Sym *)(intptr_t)tpnt->dynamic_info[DT_SYMTAB];
> > Index: ldso/libdl/libdl.c
> > ===================================================================
> > --- ldso/libdl/libdl.c (revision 25005)
> > +++ ldso/libdl/libdl.c (working copy)
> > @@ -83,7 +83,7 @@
> > char *_dl_debug_detail = NULL;
> > char *_dl_debug_nofixups = NULL;
> > char *_dl_debug_bindings = NULL;
> > -int _dl_debug_file = NULL;
> > +int _dl_debug_file = 0;
> > #endif
> > const char *_dl_progname = ""; /* Program name */
> > void *(*_dl_malloc_function)(size_t);
> > _______________________________________________
> > uClibc mailing list
> > uClibc at uclibc.org
> > http://lists.busybox.net/mailman/listinfo/uclibc
> >
>
> Hi,
> this check was explicitely removed by Jock in rev 12122 in 2005 (4 years
> ago)
> http://sources.busybox.net/index.py?view=rev&revision=12122
>
> If this extra check if definitely pointless, I'd prefer to remove this
> from all other archs, instead of re-adding againg to i386.
> Is there someone else that think we should keep the check ?
I think this check has played its role, it was good to
have in the early days but now it is just bloat. It has
never triggered for me so I am fine with removing it on all archs.
Jocke
More information about the uClibc
mailing list