On 08/17/2010 11:02 AM, Daniel P. Berrange wrote: > When closing open streams after a client quits, the event > callback was not removed. This mean that poll() was using > a closed FD and returning POLLNVAL in a busy-wait loop. > > * daemon/stream.c: Disconnect stream callbacks > --- > daemon/stream.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/daemon/stream.c b/daemon/stream.c > index d64fe73..cac54ea 100644 > --- a/daemon/stream.c > +++ b/daemon/stream.c > @@ -108,6 +108,7 @@ remoteStreamEvent(virStreamPtr st, int events, void *opaque) > remote_error rerr; > memset(&rerr, 0, sizeof rerr); > stream->closed = 1; > + virStreamEventRemoveCallback(stream->st); > virStreamAbort(stream->st); ACK. -- Eric Blake eblake@xxxxxxxxxx +1-801-349-2682 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list