
Hey, On Fri, Sep 07, 2012 at 02:55:51PM +0200, Michal Privoznik wrote:
On 07.09.2012 14:47, Daniel P. Berrange wrote:
On Fri, Sep 07, 2012 at 02:44:03PM +0200, Christophe Fergeau wrote:
On Fri, Sep 07, 2012 at 01:24:35PM +0100, Daniel P. Berrange wrote:
A nice long detailed explanation. I agree that this scenario you outline is plausible as an explanation for why Boxes sometimes stops getting events from libvirtd.
I've ran more tests in the mean time without this patch applied, but with the one below to add some debugging:
diff --git a/src/conf/domain_event.c b/src/conf/domain_event.c index 43ecdcf..33d90fb 100644 --- a/src/conf/domain_event.c +++ b/src/conf/domain_event.c @@ -1501,7 +1501,13 @@ virDomainEventStateRegisterID(virConnectPtr conn, int ret = -1;
virDomainEventStateLock(state); + VIR_WARN("RegisterID");
[1]
+ if ((state->callbacks->count == 0) && (state->timer == -1)) { + if (state->queue->count != 0) { + VIR_WARN("REG: queue's not empty: %d", state->queue->count);
I understand the WARN level here but not in [1]. Isn't DEBUG just enough there?
Oh this was just a debug patch, I'm not proposing it for inclusion, hence the WARN so that the logs I'm interested in jump to my face during the debugging ;) Christophe