[pkg-gnupg-maint] Bug#932235: gnupg: Stucks in CPU busy loop when started from torbrowser-launcher
vi0oss
vi0oss at gmail.com
Tue Jul 16 20:35:28 BST 2019
Package: gnupg
Version: 2.2.12-1
Severity: normal
-- System Information:
Debian Release: 10.0
APT prefers stable
APT policy: (900, 'stable'), (10, 'stable-debug'), (10,
'oldstable-debug'), (10, 'oldoldstable'), (10, 'oldstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.19.18-64+ (SMP w/4 CPU cores; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8),
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages gnupg depends on:
ii dirmngr 2.2.12-1
ii gnupg-l10n 2.2.12-1
ii gnupg-utils 2.2.12-1
ii gpg 2.2.12-1
ii gpg-agent 2.2.12-1
ii gpg-wks-client 2.2.12-1
ii gpg-wks-server 2.2.12-1
ii gpgsm 2.2.12-1
ii gpgv 2.2.12-1
gnupg recommends no packages.
Versions of packages gnupg suggests:
pn parcimonie <none>
ii xloadimage 4.1-25
-- no debconf information
-- Description
I noticed torbrowser-launcher gets stuck on startup. Actually it was
stuck in /usr/bin/gpg.
The problem is consistently reproducible.
Command line:
/usr/bin/gpg --status-fd 2 --homedir
/home/torbrowser/.local/share/torbrowser/gnupg_homedir --keyserver
hkps://hkps.pool.sks-keyservers.net --keyserver-options ca-cert-
file /usr/share/torbrowser-launcher/sks-keyservers.netCA.pem
include-revoked no-honor-keyserver-url no-honor-pka-record --refresh-keys
Backtrace
#0 0x0000562cd88cfc2e in add_kbnode (root=root at entry=0x562cdcdc1ce0,
node=node at entry=0x562ce050bce0) at ../../g10/kbnode.c:147
n1 = 0x562cdfe75360
#1 0x0000562cd88cd27c in keyring_get_keyblock (hd=0x562cdcd90e10,
ret_kb=ret_kb at entry=0x7fff4d17cb40) at ../../g10/keyring.c:480
pkt = 0x562ce050bb20
parsectx = {inp = 0x562cdcd90bf0, last_pkt = {pkttype =
PKT_SIGNATURE, pkt = {generic = 0x562ce050bb40, symkey_enc =
0x562ce050bb40, pubkey_enc = 0x562ce050bb40, onepass_sig =
0x562ce050bb40, signature = 0x562ce050bb40, public_key = 0x562ce050bb40,
secret_key = 0x562ce050bb40, comment = 0x562ce050bb40, user_id =
0x562ce050bb40, compressed = 0x562ce050bb40, encrypted = 0x562ce050bb40,
mdc = 0x562ce050bb40, plaintext = 0x562ce050bb40, gpg_control =
0x562ce050bb40}}, free_last_pkt = 0, skip_meta = 0, n_parsed_packets =
223025}
rc = <optimized out>
keyblock = 0x562cdcdc1ce0
node = 0x562ce050bce0
lastnode = 0x562ce050bce0
a = 0x562cdcd90bf0
in_cert = 1
pk_no = 1
uid_no = 1
save_mode = 0
#2 0x0000562cd88cb004 in keydb_get_keyblock (hd=0x562cdcde0640,
ret_kb=ret_kb at entry=0x7fff4d17cb40) at ../../g10/keydb.c:1403
err = 0
#3 0x0000562cd88c5a5c in lookup (ctrl=ctrl at entry=0x562cd9074e50,
ctx=ctx at entry=0x7fff4d17cba0, want_secret=want_secret at entry=0,
ret_keyblock=ret_keyblock at entry=0x7fff4d17cb90,
ret_found_key=ret_found_key at entry=0x7fff4d17cb98) at ../../g10/getkey.c:3678
rc = 0
no_suitable_key = 0
keyblock = 0x0
found_key = 0x0
infoflags = 1897227711
__FUNCTION__ = "lookup"
#4 0x0000562cd88c840d in get_pubkey_byfprint
(ctrl=ctrl at entry=0x562cd9074e50, pk=pk at entry=0x0,
r_keyblock=r_keyblock at entry=0x0, fprint=fprint at entry=0x7fff4d17cd90
"\357n(mڅ\352*K\247\336hN,n\207\223)\202\220,V",
fprint_len=fprint_len at entry=20) at ../../g10/getkey.c:1678
ctx = {exact = 1, want_secret = 0, req_usage = 0, kr_handle =
0x562cdcde0640, not_allocated = 1, extra_list = 0x0, found_via_akl = 0,
nitems = 1, items = {{mode = KEYDB_SEARCH_MODE_FPR20, skipfnc = 0x0,
skipfncvalue = 0x0, sn = 0x0, snlen = 0, u = {name = 0x2aea85da6d286eef
<error: Cannot access memory at address 0x2aea85da6d286eef>, fpr =
"\357n(mڅ\352*K\247\336hN,n\207\223)\202\220\000\000\000", kid =
{1831366383, 720012762}, grip =
"\357n(mڅ\352*K\247\336hN,n\207\223)\202\220"}, exact = 0}}}
kb = 0x0
found_key = 0x0
rc = <optimized out>
#5 0x0000562cd88c8d47 in get_pubkey_byfprint (fprint_len=20,
fprint=0x7fff4d17cd90 "\357n(mڅ\352*K\247\336hN,n\207\223)\202\220,V",
r_keyblock=0x0, pk=0x0, ctrl=0x562cd9074e50) at ../../g10/getkey.c:1657
rc = <optimized out>
rc = <optimized out>
ctx = <optimized out>
kb = <optimized out>
found_key = <optimized out>
#6 get_user_id_byfpr (ctrl=ctrl at entry=0x562cd9074e50,
fpr=fpr at entry=0x7fff4d17cd90
"\357n(mڅ\352*K\247\336hN,n\207\223)\202\220,V",
rn=rn at entry=0x7fff4d17cc90) at ../../g10/getkey.c:4124
r = 0x0
p = <optimized out>
pass = <optimized out>
#7 0x0000562cd88c8d8e in get_user_id_byfpr_native
(ctrl=ctrl at entry=0x562cd9074e50, fpr=fpr at entry=0x7fff4d17cd90
"\357n(mڅ\352*K\247\336hN,n\207\223)\202\220,V") at ../../g10/getkey.c:4137
rn = 0
p = <optimized out>
p2 = <optimized out>
#8 0x0000562cd890332c in import_one (ctrl=ctrl at entry=0x562cd9074e50,
keyblock=<optimized out>, stats=stats at entry=0x562cd90c4970,
fpr=fpr at entry=0x0, fpr_len=fpr_len at entry=0x0, options=<optimized out>,
options at entry=2198, from_sk=0, silent=<optimized out>,
screener=0x562cd89148f0 <keyserver_retrieval_screener>,
screener_arg=0x7fff4d17d170, origin=1, url=0x562cd9082fe0
"https://209.244.105.201:443") at ../../g10/import.c:2026
p = <optimized out>
n_uids = <optimized out>
n_subk = <optimized out>
n_sigs_cleaned = 0
curtime = 1563303832
n_sigs = 121038
n_uids_cleaned = 0
err = 0
pk = <optimized out>
node = <optimized out>
uidnode = <optimized out>
keyblock_orig = 0x562cdca41ee0
fpr2 = "\357n(mڅ\352*K\247\336hN,n\207\223)\202\220"
fpr2len = 20
keyid = {1311534727, 2468971152}
new_key = 0
mod_key = 1
same_key = 0
non_self = 1
an = <optimized out>
pkstrbuf =
"\000\000\000\000\000\000\000\000K\344\217\330,V\000\000\000\000\000\000\000\000\000\000PG\f\331,V\000"
merge_keys_done = <optimized out>
any_filter = <optimized out>
hd = 0x0
__FUNCTION__ = "import_one"
#9 0x0000562cd89043da in import (ctrl=ctrl at entry=0x562cd9074e50,
inp=inp at entry=0x562cd90c4750, fname=fname at entry=0x562cd896a988
"[stream]", stats=stats at entry=0x562cd90c4970, fpr=fpr at entry=0x0,
fpr_len=fpr_len at entry=0x0, options=2198, screener=0x562cd89148f0
<keyserver_retrieval_screener>, screener_arg=0x7fff4d17d170, origin=1,
url=0x562cd9082fe0 "https://209.244.105.201:443") at ../../g10/import.c:585
pending_pkt = 0x0
keyblock = 0x562cd913a2a0
rc = 0
v3keys = 0
#10 0x0000562cd89055eb in import_keys_internal
(ctrl=ctrl at entry=0x562cd9074e50, inp=inp at entry=0x562cd90c4750,
fnames=fnames at entry=0x0, nnames=nnames at entry=0,
stats_handle=stats_handle at entry=0x562cd90c4970, fpr=fpr at entry=0x0,
fpr_len=0x0, options=2198, screener=0x562cd89148f0
<keyserver_retrieval_screener>, screener_arg=0x7fff4d17d170, origin=1,
url=0x562cd9082fe0 "https://209.244.105.201:443") at ../../g10/import.c:457
i = <optimized out>
err = 0
stats = 0x562cd90c4970
#11 0x0000562cd89058b3 in import_keys_es_stream
(ctrl=ctrl at entry=0x562cd9074e50, fp=<optimized out>,
stats_handle=stats_handle at entry=0x562cd90c4970, fpr=fpr at entry=0x0,
fpr_len=fpr_len at entry=0x0, options=2198, screener=0x562cd89148f0
<keyserver_retrieval_screener>, screener_arg=0x7fff4d17d170, origin=1,
url=0x562cd9082fe0 "https://209.244.105.201:443") at ../../g10/import.c:546
err = <optimized out>
inp = 0x562cd90c4750
#12 0x0000562cd8914f3a in keyserver_get_chunk (r_fprlen=0x0, r_fpr=0x0,
quick=0, override_keyserver=0x0, stats_handle=0x562cd90c4970,
r_ndesc_used=<synthetic pointer>, ndesc=2, desc=0x562cd907d650,
ctrl=0x562cd9074e50) at ../../g10/keyserver.c:1752
screenerarg = {desc = 0x562cd907d650, ndesc = 2}
err = 0
datastream = 0x562cd9084470
source = 0x562cd9082fe0 "https://209.244.105.201:443"
linelen = <optimized out>
only_fprs = <optimized out>
n = <optimized out>
pattern = 0x562cd90c10c0
idx = <optimized out>
npat = <optimized out>
npat_fpr = <optimized out>
err = <optimized out>
pattern = <optimized out>
idx = <optimized out>
npat = <optimized out>
npat_fpr = <optimized out>
datastream = <optimized out>
source = <optimized out>
linelen = <optimized out>
n = <optimized out>
only_fprs = <optimized out>
__FUNCTION__ = "keyserver_get_chunk"
quiet = <optimized out>
screenerarg = <optimized out>
#13 keyserver_get (ctrl=ctrl at entry=0x562cd9074e50,
desc=desc at entry=0x562cd907d650, ndesc=ndesc at entry=2,
override_keyserver=override_keyserver at entry=0x0, quick=quick at entry=0,
r_fpr=r_fpr at entry=0x0, r_fprlen=0x0) at ../../g10/keyserver.c:1787
err = <optimized out>
stats_handle = 0x562cd90c4970
ndesc_used = <optimized out>
any_good = 0
#14 0x0000562cd89171ba in keyserver_refresh (ctrl=0x562cd9074e50,
users=<optimized out>) at ../../g10/keyserver.c:1462
tmpuri = 0x562cd9082fe0 "https://209.244.105.201:443"
err = 0
count = 2
numdesc = <optimized out>
fakev3 = <optimized out>
desc = 0x562cd907d650
options = 2050
#15 0x0000562cd88aedc9 in main (argc=<optimized out>, argv=<optimized
out>) at ../../g10/gpg.c:4655
pargs = {argc = 0x7fff4d17d36c, argv = 0x7fff4d17d360, flags =
32769, err = 0, r_opt = 0, r_type = 0, r = {ret_int = 0, ret_long = 0,
ret_ulong = 0, ret_str = 0x0}, internal = {idx = 10, inarg = 0, stopped
= 0, last = 0x7fff4d17e63a "--refresh-keys", aliases = 0x0, cur_alias =
0x0, iio_list = 0x0}}
a = <optimized out>
rc = 0
orig_argc = <optimized out>
orig_argv = <optimized out>
fname = <optimized out>
username = <optimized out>
may_coredump = 0
sl = 0x0
remusr = 0x0
locusr = 0x0
nrings = 0x0
afx = 0x0
detached_sig = 0
configfp = <optimized out>
configname = 0x0
save_configname = <optimized out>
default_configname = 0x562cd9074db0 "\240\224\a\331,V"
configlineno = 0
parse_debug = 0
default_config = 0
default_keyring = 1
greeting = 0
nogreeting = 0
logfile = 0x0
use_random_seed = 1
cmd = aRefreshKeys
debug_level = <optimized out>
trustdb_name = 0x0
def_cipher_string = <optimized out>
def_digest_string = <optimized out>
compress_algo_string = <optimized out>
cert_digest_string = <optimized out>
s2k_cipher_string = <optimized out>
s2k_digest_string = <optimized out>
pers_cipher_list = 0x0
pers_digest_list = 0x0
pers_compress_list = 0x0
eyes_only = 0
multifile = 0
pwfd = -1
ovrseskeyfd = -1
fpr_maybe_cmd = 0
any_explicit_recipient = 0
default_akl = 1
require_secmem = 0
got_secmem = 1
malloc_hooks = {malloc = 0x7f6aec2f76d0 <gcry_malloc>, realloc
= 0x7f6aec2f7710 <gcry_realloc>, free = 0x7f6aec2f7790 <gcry_free>}
ctrl = 0x562cd9074e50
print_dane_records = 0
print_pka_records = 0
__FUNCTION__ = <optimized out>
Another backtrace:
#0 0x00005599224fec2e in add_kbnode (root=root at entry=0x559922bdbc90,
node=node at entry=0x55992470e6e0) at ../../g10/kbnode.c:147
n1 = 0x55992327ce90
#1 0x00005599224fc27c in keyring_get_keyblock (hd=0x559922be66b0,
ret_kb=ret_kb at entry=0x7fff1cedf5d8) at ../../g10/keyring.c:480
pkt = 0x55992470e520
parsectx = {inp = 0x559922be8dc0, last_pkt = {pkttype =
PKT_SIGNATURE, pkt = {generic = 0x55992470e540,
symkey_enc = 0x55992470e540, pubkey_enc = 0x55992470e540,
onepass_sig = 0x55992470e540, signature = 0x55992470e540,
public_key = 0x55992470e540, secret_key = 0x55992470e540,
comment = 0x55992470e540, user_id = 0x55992470e540,
compressed = 0x55992470e540, encrypted = 0x55992470e540,
mdc = 0x55992470e540, plaintext = 0x55992470e540,
gpg_control = 0x55992470e540}}, free_last_pkt = 0,
skip_meta = 0, n_parsed_packets = 114439}
rc = <optimized out>
keyblock = 0x559922bdbc90
node = 0x55992470e6e0
lastnode = 0x55992470e6e0
a = 0x559922be8dc0
in_cert = 1
pk_no = 1
uid_no = 1
save_mode = 0
#2 0x00005599224fa004 in keydb_get_keyblock
(hd=hd at entry=0x559922be6280, ret_kb=ret_kb at entry=0x7fff1cedf5d8)
at ../../g10/keydb.c:1403
err = 0
#3 0x0000559922545fa6 in keyidlist (fakev3=0, count=<synthetic
pointer>, klist=<synthetic pointer>, users=0x0, ctrl=0x559922bdbe50)
at ../../g10/keyserver.c:1259
keyblock = 0x0
node = <optimized out>
kdbhd = <optimized out>
ndesc = <optimized out>
rc = <optimized out>
num = 100
desc = 0x559922bdbdb0
sl = <optimized out>
rc = <optimized out>
num = <optimized out>
keyblock = <optimized out>
node = <optimized out>
kdbhd = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--c
ndesc = <optimized out>
desc = <optimized out>
sl = <optimized out>
err = <optimized out>
dummy = <optimized out>
uid = <optimized out>
sig = <optimized out>
#4 keyserver_refresh (ctrl=0x559922bdbe50, users=0x0) at
../../g10/keyserver.c:1406
err = <optimized out>
count = <optimized out>
numdesc = <optimized out>
fakev3 = 0
desc = 0x559922be4650
options = 2050
#5 0x00005599224dddc9 in main (argc=<optimized out>, argv=<optimized
out>) at ../../g10/gpg.c:4655
pargs = {argc = 0x7fff1cedf71c, argv = 0x7fff1cedf710, flags =
32769, err = 0, r_opt = 0, r_type = 0, r = {ret_int = 0, ret_long = 0,
ret_ulong = 0, ret_str = 0x0}, internal = {idx = 8, inarg = 0, stopped =
0, last = 0x7fff1cee063a "--refresh-keys", aliases = 0x0, cur_alias =
0x0, iio_list = 0x0}}
a = <optimized out>
rc = 0
orig_argc = <optimized out>
orig_argv = <optimized out>
fname = <optimized out>
username = <optimized out>
may_coredump = 0
sl = 0x0
remusr = 0x0
locusr = 0x0
nrings = 0x0
afx = 0x0
detached_sig = 0
configfp = <optimized out>
configname = 0x0
save_configname = <optimized out>
default_configname = 0x559922bdbdb0 "\022"
configlineno = 0
parse_debug = 0
default_config = 0
default_keyring = 1
greeting = 0
nogreeting = 0
logfile = 0x0
use_random_seed = 1
cmd = aRefreshKeys
debug_level = <optimized out>
trustdb_name = 0x0
def_cipher_string = <optimized out>
def_digest_string = <optimized out>
compress_algo_string = <optimized out>
cert_digest_string = <optimized out>
s2k_cipher_string = <optimized out>
s2k_digest_string = <optimized out>
pers_cipher_list = 0x0
pers_digest_list = 0x0
pers_compress_list = 0x0
eyes_only = 0
multifile = 0
pwfd = -1
ovrseskeyfd = -1
fpr_maybe_cmd = 0
any_explicit_recipient = 0
default_akl = 1
require_secmem = 0
got_secmem = 1
malloc_hooks = {malloc = 0x7faee32526d0 <gcry_malloc>, realloc
= 0x7faee3252710 <gcry_realloc>, free = 0x7faee3252790 <gcry_free>}
ctrl = 0x559922bdbe50
print_dane_records = 0
print_pka_records = 0
__FUNCTION__ = <optimized out>
More information about the pkg-gnupg-maint
mailing list