FAIL: Build pr22983 (both x86-64 and aarch64, Gentoo)

Andreas K. Huettel dilfridge@gentoo.org
Fri Jun 8 19:01:00 GMT 2018


Am Dienstag, 5. Juni 2018, 13:21:07 CEST schrieb Nick Clifton:
> Hi Andreas,
> 
> > Hi, any advice what's going wrong here? I don't know enough of the background 
> > to even guess if it's Gentoo-specific... 
> 
> It may be...
> 
> > regexp_diff match failure
> > regexp "^ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +OBJECT +GLOBAL +DEFAULT +[0-9]+ 
> > +var_attr_used_disabled$"
> > line   "     6: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND 
> > __printf_chk@GLIBC_2.3.4 (3)"
> 
> My guess - the var_attr_used_disabled symbol is missing from the dynamic
> symbol table, and so the regexps are failing to find any match.  As for
> why the symbol is missing, I would guess name mangling or name prefixing.
> Maybe your system is prefixing symbols names with some text ?

huettel@pinacolada /var/tmp/portage/sys-devel/binutils-2.30-r2/work/build/ld $ readelf --dyn-syms --wide tmpdir/pr22983

Symbol table '.dynsym' contains 11 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _ITM_deregisterTMCloneTable
     2: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND __libc_start_main@GLIBC_2.2.5 (2)
     3: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
     4: 00000000000007b0     4 FUNC    GLOBAL DEFAULT   13 func_attr_used_disabled
     5: 0000000000201030     4 OBJECT  GLOBAL DEFAULT   23 var_attr_used_enabled
     6: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND __printf_chk@GLIBC_2.3.4 (3)
     7: 00000000000007a0     4 FUNC    GLOBAL DEFAULT   13 func_attr_used_enabled
     8: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _ITM_registerTMCloneTable
     9: 0000000000201034     4 OBJECT  GLOBAL DEFAULT   23 var_attr_used_disabled
    10: 0000000000000000     0 FUNC    WEAK   DEFAULT  UND __cxa_finalize@GLIBC_2.2.5 (2)

Doesn't really look like it. Comparing this to the log, 

regexp_diff match failure
regexp "^ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +OBJECT +GLOBAL +DEFAULT +[0-9]+ +var_attr_used_disabled$"
line   "     6: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND __printf_chk@GLIBC_2.3.4 (3)"
regexp_diff match failure
regexp "^ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +FUNC +GLOBAL +DEFAULT +[0-9]+ +func_attr_used_disabled$"
line   "     8: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _ITM_registerTMCloneTable"
FAIL: Build pr22983

and the test file pr22983.d, 

Symbol table '\.dynsym' contains [0-9]+ entries:
 +Num: +Value +Size Type +Bind +Vis +Ndx Name
#...
 +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +OBJECT +GLOBAL +DEFAULT +[0-9]+ +var_attr_used_enabled
 +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +OBJECT +GLOBAL +DEFAULT +[0-9]+ +var_attr_used_disabled
#...
 +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +FUNC +GLOBAL +DEFAULT +[0-9]+ +func_attr_used_enabled
 +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +FUNC +GLOBAL +DEFAULT +[0-9]+ +func_attr_used_disabled
#...

do I interpret this correctly that the test fails because of the additional lines
in between / the non-sorting of the table? (And if yes, is that relevant?)

> You could try repeating the test sequence without the -Wl,--dynamic-list,pr22983.t
> option on the final link command line, and then see what symbols are
> stored in the dynamic symbol table.

If I repeat the last link command without that parameter, the result is 

huettel@pinacolada /var/tmp/portage/sys-devel/binutils-2.30-r2/work/build/ld $ readelf --dyn-syms --wide tmpdir/pr22983

Symbol table '.dynsym' contains 8 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _ITM_deregisterTMCloneTable
     2: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND __libc_start_main@GLIBC_2.2.5 (2)
     3: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
     4: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND __printf_chk@GLIBC_2.3.4 (3)
     5: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _Jv_RegisterClasses
     6: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _ITM_registerTMCloneTable
     7: 0000000000000000     0 FUNC    WEAK   DEFAULT  UND __cxa_finalize@GLIBC_2.2.5 (2)

> 
> PS.  If possible, can you tell your mailer not to wrap lines ?  It makes
> reading the test output a lot harder...

Sorry. Should be fixed.

Thanks a lot, 
Andreas

-- 
Andreas K. Hüttel
dilfridge@gentoo.org
Gentoo Linux developer
(council, toolchain, perl, libreoffice, comrel)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 981 bytes
Desc: This is a digitally signed message part.
URL: <https://sourceware.org/pipermail/binutils/attachments/20180608/4c293df3/attachment.sig>


More information about the Binutils mailing list