
On Mon, Aug 15, 2011 at 10:12:54AM -0700, Daniel P. Berrange wrote:
From: "Daniel P. Berrange" <berrange@redhat.com>
After running 'virsh console' in interactive mode, there was a missing call to virStreamAbort, which meant the server kept the stream resources open
The combination of this patch and the other stream related patch makes the problem I was seeing of garbled console following multiple console connect/disconnects go away, but another problem remains in this area. After connecting to the console in interactive virsh and disconnecting, I often see all subsequent commands fail: virsh # dominfo foo error: failed to get domain 'foo' error: An error occurred, but the cause is unknown virsh # dominfo foo error: failed to get domain 'foo' error: no call waiting for reply with prog 536903814 vers 1 serial 300 virsh # define bar.xml error: Failed to define domain from bar.xml error: no call waiting for reply with prog 536903814 vers 1 serial 301 Closing and reopening the interactive virsh session makes the problem go away. Powering down the guest while the console is connected has made the problem 100% reproducible in the 4 or 5 tries I've given it. Dave
* tools/console.c: Abort stream when exiting --- tools/console.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/tools/console.c b/tools/console.c index 171ebc9..82ef537 100644 --- a/tools/console.c +++ b/tools/console.c @@ -90,9 +90,11 @@ static void virConsoleShutdown(virConsolePtr con) { con->quit = true; - virStreamEventRemoveCallback(con->st); - if (con->st) + if (con->st) { + virStreamEventRemoveCallback(con->st); + virStreamAbort(con->st); virStreamFree(con->st); + } if (con->stdinWatch != -1) virEventRemoveHandle(con->stdinWatch); if (con->stdoutWatch != -1) -- 1.7.6
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list