Bug 969598 - virt-manager sometimes stops responding after a guest is reset
Summary: virt-manager sometimes stops responding after a guest is reset
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Fedora
Classification: Fedora
Component: virt-manager
Version: 19
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Cole Robinson
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-05-31 21:27 UTC by Zbigniew Jędrzejewski-Szmek
Modified: 2013-11-11 17:54 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-11-06 17:44:19 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Zbigniew Jędrzejewski-Szmek 2013-05-31 21:27:42 UTC
Description of problem:
When I select "force reboot" in the virt-viewer started from virt-manager, sometimes virt-manager seems to freeze (the graphical interface is unresponsive).

In the logs (not sure if this is related):
May 31 17:03:48 bupkis libvirtd[20407]: Unable to read from monitor: Connection reset by peer
May 31 17:03:48 bupkis libvirtd[20407]: port 0 must be in range (5900, 65535)
May 31 17:04:33 bupkis libvirtd[20407]: port 0 must be in range (5900, 65535)
May 31 17:12:06 bupkis libvirtd[20407]: No response from client 0x7fb81e6b4590 after 5 keepalive messages in 30 seconds

Version-Release number of selected component (if applicable):
virt-manager-0.10.0-0.5.gitde1695b2.fc19.noarch
virt-viewer-0.5.6-1.fc19.x86_64
libvirt-1.0.5.1-1.fc19.x86_64

How reproducible:
Approx. 10% of resets of the VM

Steps to Reproduce:
1. start virt-manager
2. click on vm to open virt-viewer
3. pick reset from the menu
4. repeat

Additional info:
virt-manager backtrace when hanging:


% gdb -p 5882
Attaching to process 5882
Reading symbols from /usr/bin/python2.7...
(gdb) bt
#0  0x00000031a0a8703a in g_mutex_get_impl (mutex=0x2cefb90) at gthread-posix.c:121
#1  0x00000031a0a87319 in g_mutex_unlock (mutex=mutex@entry=0x2cefb90) at gthread-posix.c:229
#2  0x00000031a0a4804d in g_main_context_iterate (context=context@entry=0x2cefb90, block=block@entry=1, dispatch=dispatch@entry=1, 
    self=<optimized out>) at gmain.c:3649
#3  0x00000031a0a4829c in g_main_context_iteration (context=0x2cefb90, context@entry=0x0, may_block=may_block@entry=1)
    at gmain.c:3762
#4  0x00000038ed696574 in g_application_run (application=0x2d3a180, argc=<optimized out>, argv=0x0) at gapplication.c:1623
#5  0x00000038ec605cfc in ffi_call_unix64 () at ../src/x86/unix64.S:76
#6  0x00000038ec60562c in ffi_call (cif=cif@entry=0x7fff4c958060, fn=fn@entry=0x38ed6963b0 <g_application_run>, 
    rvalue=rvalue@entry=0x7fff4c958040, avalue=avalue@entry=0x7fff4c957f60) at ../src/x86/ffi64.c:522
#7  0x0000003901609bd9 in g_callable_info_invoke (info=info@entry=0x370bd40, function=0x38ed6963b0 <g_application_run>, 
    in_args=in_args@entry=0x2d51740, n_in_args=n_in_args@entry=3, out_args=out_args@entry=0x0, n_out_args=n_out_args@entry=0, 
    return_value=return_value@entry=0x7fff4c958238, is_method=is_method@entry=1, throws=0, error=error@entry=0x7fff4c9581e8)
    at girepository/gicallableinfo.c:680
#8  0x000000390160af17 in g_function_info_invoke (info=info@entry=0x370bd40, in_args=0x2d51740, n_in_args=3, out_args=0x0, 
    n_out_args=0, return_value=return_value@entry=0x7fff4c958238, error=error@entry=0x7fff4c9581e8)
    at girepository/gifunctioninfo.c:274
#9  0x00007eff3a17720f in _invoke_callable (function_ptr=0x0, callable_info=0x370bd40, cache=0x38760c0, state=0x7fff4c9581f0)
    at pygi-invoke.c:64
#10 pygi_callable_info_invoke (info=<optimized out>, py_args=<optimized out>, kwargs=<optimized out>, cache=<optimized out>, 
    function_ptr=<optimized out>, user_data=<optimized out>) at pygi-invoke.c:662
#11 0x00000031aa0dd22a in ext_do_call (nk=<optimized out>, na=<optimized out>, flags=<optimized out>, pp_stack=0x7fff4c9583b0, 
    func=<built-in method invoke of gi.FunctionInfo object at remote 0x37fd170>) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4408
#12 PyEval_EvalFrameEx (
    f=f@entry=Frame 0x2815850, for file /usr/lib64/python2.7/site-packages/gi/types.py, line 113, in function (args=(<Application at remote 0x37eec30>, None), kwargs={}), throwflag=throwflag@entry=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:2779
#13 0x00000031aa0dec7d in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=locals@entry=0x0, 
    args=<optimized out>, argcount=argcount@entry=2, kws=0x29385c0, kwcount=0, defs=0x0, defcount=0, 
    closure=closure@entry=(<cell at remote 0x37fc9b8>,)) at /usr/src/debug/Python-2.7.5/Python/ceval.c:3330
#14 0x00000031aa0dd769 in fast_function (nk=<optimized out>, na=2, n=2, pp_stack=0x7fff4c9585b0, 
    func=<function at remote 0x37ff140>) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4194
#15 call_function (oparg=<optimized out>, pp_stack=0x7fff4c9585b0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4119
#16 PyEval_EvalFrameEx (
    f=f@entry=Frame 0x29383d0, for file /usr/share/virt-manager/virt-manager, line 297, in main (leftovers=[], virtManager=<module at remote 0x2960830>, origargv=['/usr/share/virt-manager/virt-manager'], Gtk=<DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/gi...(truncated), 
    throwflag=throwflag@entry=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:2740
#17 0x00000031aa0dec7d in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=locals@entry=0x0, 
    args=<optimized out>, argcount=argcount@entry=0, kws=0x25f5b50, kwcount=0, defs=0x0, defcount=0, closure=closure@entry=0x0)
    at /usr/src/debug/Python-2.7.5/Python/ceval.c:3330
#18 0x00000031aa0dd769 in fast_function (nk=<optimized out>, na=0, n=0, pp_stack=0x7fff4c9587b0, 
    func=<function at remote 0x29688c0>) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4194
#19 call_function (oparg=<optimized out>, pp_stack=0x7fff4c9587b0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4119
#20 PyEval_EvalFrameEx (f=f@entry=Frame 0x25f59d0, for file /usr/share/virt-manager/virt-manager, line 302, in <module> (), 
    throwflag=throwflag@entry=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:2740
#21 0x00000031aa0dec7d in PyEval_EvalCodeEx (co=co@entry=0x7eff41db11b0, 
    globals=globals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at 
remote 0x2c7ecf8>, refilte...(truncated), 
    locals=locals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at remote 0x2c7ecf8>, refilte...(truncated), 
    args=args@entry=0x0, argcount=argcount@entry=0, kws=kws@entry=0x0, kwcount=kwcount@entry=0, defs=defs@entry=0x0, 
    defcount=defcount@entry=0, closure=closure@entry=0x0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:3330
#22 0x00000031aa0ded82 in PyEval_EvalCode (co=co@entry=0x7eff41db11b0, 
    globals=globals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at 
remote 0x2c7ecf8>, refilte...(truncated), 
    locals=locals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at remote 0x2c7ecf8>, refilte...(truncated))
    at /usr/src/debug/Python-2.7.5/Python/ceval.c:689
#23 0x00000031aa0f78af in run_mod (mod=<optimized out>, 
    filename=filename@entry=0x7fff4c95a1d7 "/usr/share/virt-manager/virt-manager", 
    globals=globals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at 
remote 0x2c7ecf8>, refilte...(truncated), 
    locals=locals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at remote 0x2c7ecf8>, refilte...(truncated), 
    flags=flags@entry=0x7fff4c958a10, arena=arena@entry=0x25e2470) at /usr/src/debug/Python-2.7.5/Python/pythonrun.c:1373
#24 0x00000031aa0f89ce in PyRun_FileExFlags (fp=fp@entry=0x25fe560, 
    filename=filename@entry=0x7fff4c95a1d7 "/usr/share/virt-manager/virt-manager", start=start@entry=257, 
    globals=globals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at 
remote 0x2c7ecf8>, refilte...(truncated), 
    locals=locals@entry={'launch_specific_window': <function at remote 0x2968758>, 'Gtk': <DynamicModule(_overrides_module=<module at remote 0x2a70d70>, _namespace='Gtk', _introspection_module=<IntrospectionModule(SizeGroup=<GObjectMeta(set_ignore_hidden=<function at remote 0x2b06a28>, add_widget=<function at remote 0x2b06848>, set_mode=<function at remote 0x2b06aa0>, get_mode=<function at remote 0x2b068c0>, get_widgets=<function at remote 0x2b06938>, remove_widget=<function at remote 0x2b069b0>, __module__='gi.repository.Gtk', __gsignals__={}, parent_instance=<property at remote 0x2b080a8>, get_ignore_hidden=<function at remote 0x2b06758>, new=<classmethod at remote 0x2b079f0>, __gtype__=<gobject.GType at remote 0x7eff41e32a50>, __info__=<ObjectInfo at remote 0x2786a28>, __doc__=None, priv=<property at remote 0x2b08100>) at remote 0x2b495b0>, _namespace='Gtk', STOCK_SAVE='gtk-save', __path__='/usr/lib64/girepository-1.0/Gtk-3.0.typelib', TreeModelFilter=<GObjectMeta(convert_child_iter_to_iter=<function at remote 0x2c7ecf8>, refilte...(truncated), 
    closeit=closeit@entry=1, flags=flags@entry=0x7fff4c958a10) at /usr/src/debug/Python-2.7.5/Python/pythonrun.c:1359
#25 0x00000031aa0f9b39 in PyRun_SimpleFileExFlags (fp=fp@entry=0x25fe560, 
    filename=filename@entry=0x7fff4c95a1d7 "/usr/share/virt-manager/virt-manager", closeit=closeit@entry=1, 
    flags=flags@entry=0x7fff4c958a10) at /usr/src/debug/Python-2.7.5/Python/pythonrun.c:951
#26 0x00000031aa0fa043 in PyRun_AnyFileExFlags (fp=fp@entry=0x25fe560, 
    filename=filename@entry=0x7fff4c95a1d7 "/usr/share/virt-manager/virt-manager", closeit=closeit@entry=1, 
    flags=flags@entry=0x7fff4c958a10) at /usr/src/debug/Python-2.7.5/Python/pythonrun.c:755
#27 0x00000031aa10a66f in Py_Main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Python-2.7.5/Modules/main.c:640
#28 0x0000003cd0621b75 in __libc_start_main (main=0x4006f0 <main>, argc=2, ubp_av=0x7fff4c958bc8, init=<optimized out>, 
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff4c958bb8) at libc-start.c:258
#29 0x0000000000400721 in _start ()

Comment 1 Zbigniew Jędrzejewski-Szmek 2013-05-31 21:49:51 UTC
Also happens when "Force off" is selected.
virt-viewer says: "Error: viewer connection to hypervisor host got refused or disconnected", and also the menus on top of virt-viewer stop working (they open, but no entries are shown).

Comment 2 Cole Robinson 2013-11-06 17:44:19 UTC
Since we haven't had other reports about this, and this was during f19 development cycle, I'm just going to assume this is fixed (since it doesn't seem like a virt-manager fixable issue anyways). If anyone is still affected by this, please reopen and list the libvirt, virt-manager, and qemu versions in use.

Comment 3 Zbigniew Jędrzejewski-Szmek 2013-11-11 17:54:57 UTC
I haven't seen this recently... Closing sounds OK.


Note You need to log in before you can comment on or make changes to this bug.