[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] timing issues of calling virsh on the command line



The libvirt version I'm using is 0.6.2.
The domains I'm using are fedora 11 netboot images. The images don't ever complete their netboot because they get stuck due to some error in detecting hardware. Because my experiments solely involve swapping machines, and I don't really actually care about running anything, this is fine for me.
I'm using qemu-kvm version 0.10.6.

I attached the log I received in



On Mon, Nov 9, 2009 at 2:47 AM, Daniel Veillard <veillard redhat com> wrote:
On Sat, Nov 07, 2009 at 10:24:30AM -0500, David Wilcox wrote:
> Hi,
>
> I've encountered some concurrency issues when calling virsh in a script. If
> I try to restore a VM too soon after it's been saved, libvirtd will stop
> responding. As well, if I try to save a VM too soon after it's been
> restored, libvirtd will stop responding.

 First what version are you using ? What kind of domains, what versions
of the hypervisor etc ...

Second assuming something recent, could you run /usr/sbin/libvirtd under
gdb, then reproduce the problem and provide a stack trace ? See the end
of
 https://fedoraproject.org/wiki/How_to_debug_Libvirt_problems

 for detailed informations
If libvirtd is not responding it's very probably crashed, and we need to
fix the crash.

> At the moment, I am not using any type of wait in my program for virsh to
> come back. I merely let the system call run its course and I assume that
> virsh will return when it's done waiting.
>
> Is there any type of wait that needs to occur in order to avoid these
> concurrency issues?

 The operation should be synchronous, so no wait should be needed
 something is behaving.

Daniel

--
Daniel Veillard      | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
daniel veillard com  | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library  http://libvirt.org/

Continuing.
Detaching after fork from child process 24268.
Detaching after fork from child process 24272.
Detaching after fork from child process 24298.
Detaching after fork from child process 24302.
Detaching after fork from child process 24338.
Detaching after fork from child process 24342.
Detaching after fork from child process 24378.
Detaching after fork from child process 24379.
Detaching after fork from child process 24418.
Detaching after fork from child process 24421.
Detaching after fork from child process 24458.
Detaching after fork from child process 24459.
Detaching after fork from child process 24497.
Detaching after fork from child process 24500.
Detaching after fork from child process 24537.
Detaching after fork from child process 24538.
Detaching after fork from child process 24577.
Detaching after fork from child process 24578.
Detaching after fork from child process 24617.
Detaching after fork from child process 24620.
Detaching after fork from child process 24657.
Detaching after fork from child process 24659.
Detaching after fork from child process 24697.
Detaching after fork from child process 24799.
Detaching after fork from child process 24825.
Detaching after fork from child process 24826.
Detaching after fork from child process 24865.
Detaching after fork from child process 24866.
Detaching after fork from child process 24905.
Detaching after fork from child process 24908.

Program received signal SIGINT, Interrupt.
0x0000003f364d50d3 in poll () from /lib64/libc.so.6

Thread 6 (Thread 0x7fb5f5047910 (LWP 24128)):
#0  0x0000003f3700b2f9 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib64/libpthread.so.0
#1  0x00007fb5f654d049 in virCondWait () from /usr/lib64/libvirt.so.0
#2  0x00000000004118b5 in polkit_caller_new_from_pid ()
#3  0x0000003f3700686a in start_thread () from /lib64/libpthread.so.0
#4  0x0000003f364de3bd in clone () from /lib64/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fb5f4646910 (LWP 24129)):
#0  0x0000003f364d50d3 in poll () from /lib64/libc.so.6
#1  0x000000000042175e in polkit_caller_new_from_pid ()
#2  0x0000000000427f6a in polkit_caller_new_from_pid ()
#3  0x00007fb5f655e34a in virDomainSave () from /usr/lib64/libvirt.so.0
#4  0x0000000000417bdf in polkit_caller_new_from_pid ()
#5  0x000000000041c261 in polkit_caller_new_from_pid ()
#6  0x000000000041194d in polkit_caller_new_from_pid ()
#7  0x0000003f3700686a in start_thread () from /lib64/libpthread.so.0
#8  0x0000003f364de3bd in clone () from /lib64/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fb5f3c45910 (LWP 24130)):
#0  0x0000003f3700b2f9 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib64/libpthread.so.0
#1  0x00007fb5f654d049 in virCondWait () from /usr/lib64/libvirt.so.0
#2  0x00000000004118b5 in polkit_caller_new_from_pid ()
#3  0x0000003f3700686a in start_thread () from /lib64/libpthread.so.0
#4  0x0000003f364de3bd in clone () from /lib64/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fb5f3244910 (LWP 24131)):
#0  0x0000003f3700b2f9 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib64/libpthread.so.0
#1  0x00007fb5f654d049 in virCondWait () from /usr/lib64/libvirt.so.0
#2  0x00000000004118b5 in polkit_caller_new_from_pid ()
#3  0x0000003f3700686a in start_thread () from /lib64/libpthread.so.0
#4  0x0000003f364de3bd in clone () from /lib64/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fb5f2843910 (LWP 24132)):
#0  0x0000003f3700b2f9 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib64/libpthread.so.0
#1  0x00007fb5f654d049 in virCondWait () from /usr/lib64/libvirt.so.0
#2  0x00000000004118b5 in polkit_caller_new_from_pid ()
#3  0x0000003f3700686a in start_thread () from /lib64/libpthread.so.0
#4  0x0000003f364de3bd in clone () from /lib64/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fb5f5e77790 (LWP 24123)):
#0  0x0000003f364d50d3 in poll () from /lib64/libc.so.6
#1  0x000000000040ec75 in polkit_caller_new_from_pid ()
#2  0x0000000000410dc9 in polkit_caller_new_from_pid ()
#3  0x000000000041108e in polkit_caller_new_from_pid ()
#4  0x0000000000414697 in polkit_caller_new_from_pid ()
#5  0x0000003f3641ea2d in __libc_start_main () from /lib64/libc.so.6
#6  0x000000000040dd99 in polkit_caller_new_from_pid ()
#7  0x00007fff1c19f7a8 in ?? ()
#8  0x000000000000001c in ?? ()
#9  0x0000000000000002 in ?? ()
#10 0x00007fff1c1a0f4f in ?? ()
#11 0x00007fff1c1a0f58 in ?? ()
#12 0x0000000000000000 in ?? ()

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]