Quantcast
Channel: CentOS Bug Tracker - Issues
Viewing all articles
Browse latest Browse all 19115

0008564: Simultaneous start of VM`s failing due to timeout on virDBusCall

$
0
0
Creating multiple VM`s via libvirt fails with the follwing error: <br /> "libvirtError: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken."<br /> <br /> Investigation showed that bug occurs due to problem in systemd-machined message loop. <br /> <br /> Systemd-Machined main loop works in the following way :<br /> <br /> loop :<br /> 1) perform GC (Note at the end)<br /> 2) read messages from DBUS and dispatch one<br /> 3) if more messages pending goto (1)<br /> 3) perform GC (NOTE at the end)<br /> 4) poll on DBUS fd<br /> 5) goto step 1<br /> <br /> This works fine, except that in step (3) and (1)<br /> there is a message send/reply receive of<br /> r = bus_method_call_with_reply(<br /> manager->bus,<br /> "org.freedesktop.systemd1",<br /> "/org/freedesktop/systemd1",<br /> "org.freedesktop.systemd1.Manager",<br /> "StopUnit",<br /> &reply,<br /> error,<br /> DBUS_TYPE_STRING, &unit,<br /> DBUS_TYPE_STRING, &fail,<br /> DBUS_TYPE_INVALID);<br /> <br /> which causes network layer to read/write messages to DBUS fd. In case that any <br /> other message gets in during this send/receive cycle it wont be processed till <br /> next stage (2) which will occur only in case that more messages are received <br /> by machined.

Viewing all articles
Browse latest Browse all 19115

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>