Ian Jackson <ijack...@chiark.greenend.org.uk> wrote: >> The invocation of gpg-agent by gpg frontend has an inherent race in the >> current implementation; When gpg frontend invokes gpg-agent, after >> spawning gpg-agent, gpg frontend tries to connect five times with one >> second intervals. When a machine is busy enough and scheduling of >> processes goes not that fair, the connection to gpg-agent from gpg >> frontend may fail. > > This might be relevant. My test suite failures occur on a loaded > machine, because the test case runner parallelises separate tests. > > Does this produce a particular message, when it occurs ?
Yes. > There are other possible approaches to this situation than to hope to > win the race. But I hesitate to suggest adding additional code to > this area, having seen what's there already... > > If you would like to suggest a debug printf, or name lines of source > code, I can probably arrange to see if this is happening. Here is the lines. diff --git a/common/asshelp.c b/common/asshelp.c index f3a92f9e5..8c584fb4f 100644 --- a/common/asshelp.c +++ b/common/asshelp.c @@ -451,6 +451,8 @@ start_new_gpg_agent (assuan_context_t *r_ctx, break; } } + if (i >= SECS_TO_WAIT_FOR_AGENT) + log_error ("agent invoked successfully, but...\n"); } } --