Control: reassign -1 gnupg-agent 2.1.16-3 On 2016-12-18 18:14:27 +0100, Werner Koch wrote: > On Sun, 18 Dec 2016 17:00, [email protected] said: > > > which led me to this patch: > > This is > > agent: Kludge to mitigate blocking calls in Libgcrypt. > > * agent/gpg-agent.c (agent_libgcrypt_progress_cb): Sleep for 100ms on > "need_entropy". > -- > > During key generation Libgrypt will read from /dev/random which may > block. Libgcrypt is not nPth aware and thus the entire process will > block. Fortunately there is also a select with a short timeout to run > the progress callback. We detect this in gpg-agent and introduce a > short delay to give other threads (i.e. connections) an opportunity to > run.
After the upgrade to gnupg-agent 2.1.17-6 and killing the old gnupg-agent, the bug no longer seems to occur. I suppose that was the same bug as 851298 "10 second delay on first ssh use (sleeps in agent_libgcrypt_progress_cb)", which has been fixed and where you said: The sleeping is done to reqlinguish control to other threads. Libgcrypt 1.7 unfortunately needs to resort to the progress callback to do that. i.e. something similar to the above. In this case, it should be merged to bug 851298 (and it will be closed as fixed at the same time). -- Vincent Lefèvre <[email protected]> - Web: <https://www.vinc17.net/> 100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/> Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

