[lfs-support] ALFS: glibc-2.26, pass-1 fails

DJ Lucas blfs-dev at lucasit.com
Wed Nov 8 22:53:50 PST 2017



On 11/08/2017 03:17 PM, Pol Vangheluwe wrote:
>
>> Op 5 nov. 2017, om 17:22 heeft Pol Vangheluwe
>> <pol.vangheluwe at icloud.com <mailto:pol.vangheluwe at icloud.com>> het
>> volgende geschreven:
>>
>>
>>> Op 3 nov. 2017, om 00:15 heeft DJ Lucas <blfs-dev at lucasit.com
>>> <mailto:blfs-dev at lucasit.com>> het volgende geschreven:
>>> (…)
>>> I don't build PPC, but that link should be /lib/ld-lsb-ppc32.so.3 for
>>> PPC32 or /lib64/ld-lsb-ppc64.so.3 for PPC64.
>>>
>>> See:
>>>
>>> http://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-PPC32/LSB-Core-PPC32/requirements.html#RLIBRARIES
>>>
>>> and
>>>
>>> http://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-PPC64/LSB-Core-PPC64/requirements.html#RLIBRARIES
>>>
>>> —DJ
>>
>> I changed the link as suggested by DJ but it didn’t solve the problem.
>>  To be sure that no leftover form the previous build is still
>> contaminating the system,
>> I even restarted from zero.
>>
>> It is maybe good to know that, already during the build of glibc, the
>> system is spitting out tons of messages “ld.so.1: unhandled signal 11
>> at …”,
>> but without stopping the command script.  The script only stops when
>> executing zic.
>> coredumpctl reports hundreds of lines like:
>>
>> zo 2017-11-05 12:40:44 CET    21343 -775979576 -775979576  11 *
>> /mnt/build_dir/sources/glibc-2.26/build/elf/ld.so
>>
> Inspecting a coredump for ld.so delivers this result:
>
> *lfs_ppc125 [ */var/lib/systemd/coredump*]$ **sudo gdb
> /mnt/build_dir/sources/glibc-2.26/build/elf/ld.so
> "core.ld\x2eso\x2e1.-857252408.6affbfe0e76e4d0095de50f2a05540cb.3453.1509881249000000"*
> [sudo] password for lfs_ppc125
> GNU gdb (GDB) 7.8
> Copyright (C) 2014 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "powerpc-unknown-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
> <http://www.gnu.org/software/gdb/documentation/>.
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/elf/ld.so...done.
>
> warning: core file may not match specified executable file.
> [New LWP 3454]
> [New LWP 3453]
> [New LWP 3458]
> [New LWP 3455]
> [New LWP 3456]
> [New LWP 3457]
> [New LWP 3459]
>
> warning: Could not load shared library symbols for 7 libraries, e.g.
> linux-vdso32.so.1.
> Use the "info sharedlibrary" command to see the complete listing.
> Do you need "set solib-search-path" or "set sysroot"?
> Core was generated by `/sources/glibc-2.26/build/elf/ld.so.1
> --library-path /sources/glibc-2.26/build:'.
> Program terminated with signal SIGSEGV, Segmentation fault.
> #0  0x0fe2ea60 in ?? ()
> (gdb) *set sysroot /mnt/build_dir*
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/dlfcn/libdl.so.2...done.
> Loaded symbols for /mnt/build_dir/sources/glibc-2.26/build/dlfcn/libdl.so.2
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/resolv/libresolv.so.2...done.
> Loaded symbols for
> /mnt/build_dir/sources/glibc-2.26/build/resolv/libresolv.so.2
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/nptl/libpthread.so.0...done.
> warning: Unable to find libthread_db matching inferior's thread library,
> thread debugging will not be available.
> Loaded symbols for
> /mnt/build_dir/sources/glibc-2.26/build/nptl/libpthread.so.0
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/libc.so.6...done.
> Loaded symbols for /mnt/build_dir/sources/glibc-2.26/build/libc.so.6
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/elf/ld.so.1...done.
> Loaded symbols for /mnt/build_dir/sources/glibc-2.26/build/elf/ld.so.1
> Reading symbols from
> /mnt/build_dir/sources/glibc-2.26/build/resolv/libnss_dns.so.2...done.
> Loaded symbols for
> /mnt/build_dir/sources/glibc-2.26/build/resolv/libnss_dns.so.2
> (gdb) *bt*
> #0  __GI___libc_realloc (oldmem=0xa642db30, bytes=8) at malloc.c:3145
> #1  0x0fe0440c in _IO_vfscanf_internal (s=s at entry=0xb7f24420,
> format=format at entry=0x10006230 <error: Cannot access memory at address
> 0x10006230>, argptr=argptr at entry=0xb7f24550, errp=errp at entry=0x0)
>     at vfscanf.c:1193
> #2  0x0fe16134 in _IO_vsscanf (string=0xb7f246fe "code1.example",
> format=0x10006230 <error: Cannot access memory at address 0x10006230>,
> args=args at entry=0xb7f24550) at iovsscanf.c:41
> #3  0x0fe0ea20 in __sscanf (s=<optimized out>, format=<optimized out>)
> at sscanf.c:32
> #4  0x1000163c in ?? ()
> #5  0x10002c44 in ?? ()
> #6  0x10002dc8 in ?? ()
> #7  0x10002354 in ?? ()
> #8  0x0ff4febc in start_thread (arg=0xb7f254b0) at pthread_create.c:465
> Backtrace stopped: previous frame inner to this frame (corrupt stack?)
> (gdb) q
>
> Does this ring a bell to anybody?
>
> pvg
>

Nothing obvious, but are you running a sufficiently recent kernel? The 
malloc call reminds me that they fixed a stack overflow in both glibc 
and kernel only a few months ago. I know a 3.18.20 kernel was 
successfully used (on list) not too long ago on x86_64. Also, what is 
the host? Maybe that will give us a clue, but not many building on PPC.

--DJ




More information about the lfs-support mailing list