<div dir="ltr">Thanks for your time on this Dan!<div><br></div><div>The output from the hostdev looks like it may be unparseable, so I&#39;m hoping this is the issue (and that it can be easily remedied).</div><div><br></div><div>I&#39;ve also create a log of the other items you asked for, available at: <a href="https://www.dropbox.com/s/qh0yw1ptpivpatm/typescript?dl=0">https://www.dropbox.com/s/qh0yw1ptpivpatm/typescript?dl=0</a></div><div><br></div><div><div>[root@ovirt01 vdsm]# vdsm-tool restore-nets</div><div>&lt;device&gt;</div><div>  &lt;name&gt;computer&lt;/name&gt;</div><div>  &lt;capability type=&#39;system&#39;&gt;</div><div>    &lt;product&gt;���������������������������������&lt;/product&gt;</div><div>    &lt;hardware&gt;</div><div>      &lt;vendor&gt;���������������������������������&lt;/vendor&gt;</div><div>      &lt;version&gt;���������������������������������&lt;/version&gt;</div><div>      &lt;serial&gt;���������������������������������&lt;/serial&gt;</div><div>      &lt;uuid&gt;d6a3e3c1-c5cb-42e9-a54c-ff8d0df91722&lt;/uuid&gt;</div><div>    &lt;/hardware&gt;</div><div>    &lt;firmware&gt;</div><div>      &lt;vendor&gt;Intel Corp.&lt;/vendor&gt;</div><div>      &lt;version&gt;FYBYT10H.86A.0052.2015.0923.1845&lt;/version&gt;</div><div>      &lt;release_date&gt;09/23/2015&lt;/release_date&gt;</div><div>    &lt;/firmware&gt;</div><div>  &lt;/capability&gt;</div><div>&lt;/device&gt;</div><div><br></div><div>Traceback (most recent call last):</div><div>  File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 429, in &lt;module&gt;</div><div>    restore(args)</div><div>  File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 387, in restore</div><div>    _restore_sriov_numvfs()</div><div>  File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 82, in _restore_sriov_numvfs</div><div>    sriov_devices = _get_sriov_devices()</div><div>  File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 54, in _get_sriov_devices</div><div>    devices = hostdev.list_by_caps()</div><div>  File &quot;/usr/share/vdsm/hostdev.py&quot;, line 177, in list_by_caps</div><div>    libvirt_devices = _get_devices_from_libvirt()</div><div>  File &quot;/usr/share/vdsm/hostdev.py&quot;, line 162, in _get_devices_from_libvirt</div><div>    for device in libvirtconnection.get().listAllDevices(0))</div><div>  File &quot;/usr/share/vdsm/hostdev.py&quot;, line 162, in &lt;genexpr&gt;</div><div>    for device in libvirtconnection.get().listAllDevices(0))</div><div>  File &quot;/usr/share/vdsm/hostdev.py&quot;, line 109, in _parse_device_params</div><div>    devXML = etree.fromstring(device_xml)</div><div>  File &quot;/usr/lib64/python2.7/xml/etree/ElementTree.py&quot;, line 1300, in XML</div><div>    parser.feed(text)</div><div>  File &quot;/usr/lib64/python2.7/xml/etree/ElementTree.py&quot;, line 1642, in feed</div><div>    self._raiseerror(v)</div><div>  File &quot;/usr/lib64/python2.7/xml/etree/ElementTree.py&quot;, line 1506, in _raiseerror</div><div>    raise err</div><div>xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 4, column 13</div><div>Traceback (most recent call last):</div><div>  File &quot;/bin/vdsm-tool&quot;, line 219, in main</div><div>    return tool_command[cmd][&quot;command&quot;](*args)</div><div>  File &quot;/usr/lib/python2.7/site-packages/vdsm/tool/restore_nets.py&quot;, line 41, in restore_command</div><div>    exec_restore(cmd)</div><div>  File &quot;/usr/lib/python2.7/site-packages/vdsm/tool/restore_nets.py&quot;, line 54, in exec_restore</div><div>    raise EnvironmentError(&#39;Failed to restore the persisted networks&#39;)</div><div>EnvironmentError: Failed to restore the persisted networks</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 7, 2016 at 10:37 AM, Dan Kenigsberg <span dir="ltr">&lt;<a href="mailto:danken@redhat.com" target="_blank">danken@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Mon, Mar 07, 2016 at 03:16:06PM +0200, Yedidyah Bar David wrote:<br>
&gt; On Mon, Mar 7, 2016 at 3:01 PM, Jonathan Sherman &lt;<a href="mailto:haviland@gmail.com">haviland@gmail.com</a>&gt; wrote:<br>
&gt; &gt; Didi -<br>
&gt; &gt;<br>
&gt; &gt; The vdsmd service error is what led me to the vdsm-tool restore-nets<br>
&gt; &gt; concern.  See the chain of errors below (along with the other details you<br>
&gt; &gt; requested.)<br>
&gt;<br>
&gt; Thanks.<br>
&gt;<br>
&gt; Changing subject and adding Dan.<br>
<br>
&gt; &gt;<br>
</span><div><div class="h5">&gt; &gt; [root@ovirt01 log]# vdsm-tool restore-nets<br>
&gt; &gt; Traceback (most recent call last):<br>
&gt; &gt;   File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 429, in &lt;module&gt;<br>
&gt; &gt;     restore(args)<br>
&gt; &gt;   File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 387, in restore<br>
&gt; &gt;     _restore_sriov_numvfs()<br>
&gt; &gt;   File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 82, in<br>
&gt; &gt; _restore_sriov_numvfs<br>
&gt; &gt;     sriov_devices = _get_sriov_devices()<br>
&gt; &gt;   File &quot;/usr/share/vdsm/vdsm-restore-net-config&quot;, line 54, in<br>
&gt; &gt; _get_sriov_devices<br>
&gt; &gt;     devices = hostdev.list_by_caps()<br>
&gt; &gt;   File &quot;/usr/share/vdsm/hostdev.py&quot;, line 175, in list_by_caps<br>
&gt; &gt;     libvirt_devices = _get_devices_from_libvirt()<br>
&gt; &gt;   File &quot;/usr/share/vdsm/hostdev.py&quot;, line 160, in _get_devices_from_libvirt<br>
&gt; &gt;     for device in libvirtconnection.get().listAllDevices(0))<br>
&gt; &gt;   File &quot;/usr/share/vdsm/hostdev.py&quot;, line 160, in &lt;genexpr&gt;<br>
&gt; &gt;     for device in libvirtconnection.get().listAllDevices(0))<br>
&gt; &gt;   File &quot;/usr/share/vdsm/hostdev.py&quot;, line 107, in _parse_device_params<br>
&gt; &gt;     devXML = etree.fromstring(device_xml)<br>
&gt; &gt;   File &quot;/usr/lib64/python2.7/xml/etree/ElementTree.py&quot;, line 1300, in XML<br>
&gt; &gt;     parser.feed(text)<br>
&gt; &gt;   File &quot;/usr/lib64/python2.7/xml/etree/ElementTree.py&quot;, line 1642, in feed<br>
&gt; &gt;     self._raiseerror(v)<br>
&gt; &gt;   File &quot;/usr/lib64/python2.7/xml/etree/ElementTree.py&quot;, line 1506, in<br>
&gt; &gt; _raiseerror<br>
&gt; &gt;     raise err<br>
&gt; &gt; xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 4,<br>
&gt; &gt; column 13<br>
&gt; &gt; Traceback (most recent call last):<br>
&gt; &gt;   File &quot;/bin/vdsm-tool&quot;, line 219, in main<br>
&gt; &gt;     return tool_command[cmd][&quot;command&quot;](*args)<br>
&gt; &gt;   File &quot;/usr/lib/python2.7/site-packages/vdsm/tool/restore_nets.py&quot;, line<br>
&gt; &gt; 41, in restore_command<br>
&gt; &gt;     exec_restore(cmd)<br>
&gt; &gt;   File &quot;/usr/lib/python2.7/site-packages/vdsm/tool/restore_nets.py&quot;, line<br>
&gt; &gt; 54, in exec_restore<br>
&gt; &gt;     raise EnvironmentError(&#39;Failed to restore the persisted networks&#39;)<br>
&gt; &gt; EnvironmentError: Failed to restore the persisted networks<br>
<br>
</div></div>Jonathan, thanks for this disturbing report. For some reason, Vdsm fails<br>
to parse libvirt&#39;s output.<br>
<br>
Could you share your libvirt version as well the output of<br>
    for d in `virsh -r nodedev-list`; do echo ====$d====; virsh -r nodedev-dumpxml $d; done<br>
<br>
if all seems like valid xml, can you add the following print() and run<br>
`restore-net` again?<br>
<br>
diff --git a/lib/vdsm/hostdev.py b/lib/vdsm/hostdev.py<br>
index 6ba3189..9d22e9e 100644<br>
--- a/lib/vdsm/hostdev.py<br>
+++ b/lib/vdsm/hostdev.py<br>
@@ -113,6 +113,7 @@ def _parse_device_params(device_xml):<br>
     Process device_xml and return dict of found known parameters,<br>
     also doing sysfs lookups for sr-iov related information<br>
     &quot;&quot;&quot;<br>
+    print(device_xml)<br>
     address_parser = {&#39;pci&#39;: _parse_pci_address,<br>
                       &#39;scsi&#39;: _parse_scsi_address,<br>
                       &#39;usb_device&#39;: _parse_usb_address}<br>
<br>
Regards,<br>
Dan.<br>
</blockquote></div><br></div>