This shows the problem, but not the underlying cause:

$ gdb bin/mir_test_reload_protobufGNU gdb (Ubuntu 7.11.90.20160906-0ubuntu1) 
7.11.90.20160906-git
Copyright (C) 2016 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 "x86_64-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 bin/mir_test_reload_protobuf...done.
(gdb) b /home/alan/display_server/mir/tests/loader-tests/test_reload.c:36
No source file named 
/home/alan/display_server/mir/tests/loader-tests/test_reload.c.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 
(/home/alan/display_server/mir/tests/loader-tests/test_reload.c:36) pending.
(gdb) r
Starting program: 
/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/mir_test_reload_protobuf
 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
MIR_CLIENT_PLATFORM_PATH=/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/../lib/client-modules/
MIR_SERVER_PLATFORM_PATH=/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/../lib/server-modules/
LD_LIBRARY_PATH=/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/../lib
exec=/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/mir_test_reload_protobuf.bin
process 2335 is executing new program: 
/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/mir_test_reload_protobuf.bin
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Breakpoint 1, main (argc=1, argv=0x7fffffffde58) at 
/home/alan/display_server/mir/tests/loader-tests/test_reload.c:36
36              dl = dlopen(libname, RTLD_NOW);
(gdb) info share
>From                To                  Syms Read   Shared Object Library
0x00007ffff7dd8aa0  0x00007ffff7df6130  Yes         /lib64/ld-linux-x86-64.so.2
0x00007ffff7bd4d80  0x00007ffff7bd598e  Yes         
/lib/x86_64-linux-gnu/libdl.so.2
0x00007ffff79bba60  0x00007ffff79c8e01  Yes         
/lib/x86_64-linux-gnu/libpthread.so.0
0x00007ffff760e9c0  0x00007ffff775f0c3  Yes         
/lib/x86_64-linux-gnu/libc.so.6
(gdb) n
37              if (dl)
(gdb) info share
>From                To                  Syms Read   Shared Object Library
0x00007ffff7dd8aa0  0x00007ffff7df6130  Yes         /lib64/ld-linux-x86-64.so.2
0x00007ffff7bd4d80  0x00007ffff7bd598e  Yes         
/lib/x86_64-linux-gnu/libdl.so.2
0x00007ffff79bba60  0x00007ffff79c8e01  Yes         
/lib/x86_64-linux-gnu/libpthread.so.0
0x00007ffff760e9c0  0x00007ffff775f0c3  Yes         
/lib/x86_64-linux-gnu/libc.so.6
0x00007ffff7360c60  0x00007ffff73c3e86  Yes         
/home/alan/.CLion2016.2/system/cmake/generated/mir-9ec817d/9ec817d/Debug/bin/../lib/libmirprotobuf.so.3
0x00007ffff710ddd0  0x00007ffff712a3c6  Yes         
/usr/local/lib/libprotobuf-lite.so.10
0x00007ffff6df8900  0x00007ffff6ea7c79  Yes (*)     
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
0x00007ffff6b58a90  0x00007ffff6b688e5  Yes (*)     
/lib/x86_64-linux-gnu/libgcc_s.so.1
0x00007ffff6852710  0x00007ffff68c3bfa  Yes         
/lib/x86_64-linux-gnu/libm.so.6
(*): Shared library is missing debugging information.
(gdb) c
Continuing.
[0] dlopen `libmirprotobuf.so.3' = 0x5555557564c0

Breakpoint 1, main (argc=1, argv=0x7fffffffde58) at 
/home/alan/display_server/mir/tests/loader-tests/test_reload.c:36
36              dl = dlopen(libname, RTLD_NOW);
(gdb) info share
>From                To                  Syms Read   Shared Object Library
0x00007ffff7dd8aa0  0x00007ffff7df6130  Yes         /lib64/ld-linux-x86-64.so.2
0x00007ffff7bd4d80  0x00007ffff7bd598e  Yes         
/lib/x86_64-linux-gnu/libdl.so.2
0x00007ffff79bba60  0x00007ffff79c8e01  Yes         
/lib/x86_64-linux-gnu/libpthread.so.0
0x00007ffff760e9c0  0x00007ffff775f0c3  Yes         
/lib/x86_64-linux-gnu/libc.so.6
0x00007ffff710ddd0  0x00007ffff712a3c6  Yes         
/usr/local/lib/libprotobuf-lite.so.10
0x00007ffff6df8900  0x00007ffff6ea7c79  Yes (*)     
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
0x00007ffff6b58a90  0x00007ffff6b688e5  Yes (*)     
/lib/x86_64-linux-gnu/libgcc_s.so.1
0x00007ffff6852710  0x00007ffff68c3bfa  Yes         
/lib/x86_64-linux-gnu/libm.so.6
(*): Shared library is missing debugging information.

With protobuf-2.6.1 the libprotobuf-lite library is unloaded at this
point. (And that means that the next iteration of this loop repeats the
"one time" initialization - the patch in #18 works around it.)

I've yet to find the reason that the library remains resident when its
only dependent is unloaded.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1619616

Title:
  Mir test fails with protobuf3: Protobuf-can-be-reloaded (SEGFAULT)

Status in Mir:
  Confirmed
Status in mir package in Ubuntu:
  Confirmed
Status in protobuf package in Ubuntu:
  In Progress

Bug description:
  builds with 3.0.0-7, then has one failing test:

  test 19
        Start 19: Protobuf-can-be-reloaded

  19: Test command: 
/<<BUILDDIR>>/mir-0.24.0+16.10.20160815.3/obj-powerpc64le-linux-gnu/bin/mir_test_reload_protobuf
  19: Test timeout computed to be: 9.99988e+06
  19/19 Test #19: Protobuf-can-be-reloaded 
..........................***Exception: SegFault 0.17 sec

  95% tests passed, 1 tests failed out of 19

  Total Test time (real) = 125.73 sec

  The following tests FAILED:
    19 - Protobuf-can-be-reloaded (SEGFAULT)
  Errors while running CTest
  Makefile:85: recipe for target 'test' failed
  make[2]: *** [test] Error 8

To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1619616/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to