Bug#807756: gnubg: fails to start. hangs using 100% of one cpu core
Russ Allbery
rra at debian.org
Sat Dec 12 20:58:30 UTC 2015
Control: reassign -1 libtasn1-6
Control: affects -1 gnubg
Julian Hughes <julianhughes at gmail.com> writes:
> Package: gnubg
> Version: 1.05.000-2
> Severity: grave
> Justification: renders package unusable
> when starting gnubg it uses 100% of one cpu core and then apparently
> hangs with no output and without starting the gui.
So, I'm not sure what's going on here, but it seems to be some sort of
weird bug in libgnutls/libtasn1. gnubg is going into an infinite loop
before any gnubg code actually runs at all, during shared library
initialization. This is the backtrace of the infinite loop:
#0 memcpy (__dest=0x83e070, __src=0x7fffea09a46e, __len=6)
at /usr/include/x86_64-linux-gnu/bits/string3.h:53
#1 0x00007fffe838eee2 in strcpy (__src=0x7fffea09a46e "PKIX1",
__dest=0x83e070 "") at /usr/include/x86_64-linux-gnu/bits/string3.h:104
#2 _asn1_str_cpy (dest=dest at entry=0x83e070 "",
dest_tot_size=dest_tot_size at entry=65, src=0x7fffea09a46e "PKIX1")
at gstr.c:59
#3 0x00007fffe838f43b in _asn1_set_name (node=node at entry=0x83e070,
name=<optimized out>) at parser_aux.c:379
#4 0x00007fffe8390489 in asn1_array2tree (array=<optimized out>,
definitions=definitions at entry=0x7fffea2d0f20 <_gnutls_pkix1_asn>,
errorDescription=errorDescription at entry=0x0) at structure.c:199
#5 0x00007fffe9ff4edd in gnutls_global_init () at gnutls_global.c:257
#6 0x00007fffe9fd6ed9 in lib_init () at gnutls_global.c:434
#7 0x00007ffff7dea26a in call_init (l=<optimized out>, argc=argc at entry=1,
argv=argv at entry=0x7fffffffe098, env=env at entry=0x7fffffffe0a8)
at dl-init.c:72
#8 0x00007ffff7dea37b in call_init (env=0x7fffffffe0a8, argv=0x7fffffffe098,
argc=1, l=<optimized out>) at dl-init.c:30
#9 _dl_init (main_map=0x7ffff7ffe188, argc=1, argv=0x7fffffffe098,
env=0x7fffffffe0a8) at dl-init.c:120
#10 0x00007ffff7ddbcca in _dl_start_user () from /lib64/ld-linux-x86-64.so.2
#11 0x0000000000000001 in ?? ()
#12 0x00007fffffffe42a in ?? ()
#13 0x0000000000000000 in ?? ()
So for some reason it's going into an infinite loop inside a memcpy of
only six bytes? I'm really boggled by this behavior, but I'm not seeing
the mechanism where gnubg could cause this.
Reassigning to the libtasn1-6 package for help. Maybe they have some idea
what's going on here.
libtasn1-6 maintainers, this is 100% reproducible by just installing gnubg
from unstable and running gnubg. To get the above backtrace, I just
grabbed the source package, did apt-get build-dep gnubg, debian/rules
build, and installed the debugging packages for libgnutls and libtasn1.
--
Russ Allbery (rra at debian.org) <http://www.eyrie.org/~eagle/>
More information about the Pkg-gnutls-maint
mailing list