<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">12.11.15 21:29, Alexandr Krivulya
      пишет:<br>
    </div>
    <blockquote cite="mid:5644E899.20703@shurik.kiev.ua" type="cite">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      Hello,<br>
      after upgrade to 3.6 virtual machine with hostusb vdsm hook
      attached cannot be started:<br>
      <br>
      <tt><small><big>Thread-2194::ERROR::2015-11-12
            21:21:16,527::vm::751::virt.vm::(_startUnderlyingVm)
            vmId=`ec7cde24-ac17-453c-a0d3-1873993b80e1`::The vm start
            process failed<br>
            Traceback (most recent call last):<br>
              File "/usr/share/vdsm/virt/vm.py", line 695, in
            _startUnderlyingVm<br>
                self._run()<br>
              File "/usr/share/vdsm/virt/vm.py", line 1876, in _run<br>
                self._domDependentInit()<br>
              File "/usr/share/vdsm/virt/vm.py", line 1733, in
            _domDependentInit<br>
                self._getUnderlyingVmDevicesInfo()<br>
              File "/usr/share/vdsm/virt/vm.py", line 1682, in
            _getUnderlyingVmDevicesInfo<br>
                self._getUnderlyingHostDeviceInfo()<br>
              File "/usr/share/vdsm/virt/vm.py", line 4106, in
            _getUnderlyingHostDeviceInfo<br>
                if device_type == 'usb':<br>
              File "/usr/share/vdsm/virt/vm.py", line 4092, in
            _getUnderlyingHostDeviceUSBInfo<br>
                for dev in self.conf['devices']:<br>
            UnboundLocalError: local variable 'device' referenced before
            assignment<br>
            Thread-2194::INFO::2015-11-12
            21:21:16,546::vm::1278::virt.vm::(setDownStatus)
            vmId=`ec7cde24-ac17-453c-a0d3-1873993b80e1`::Changed state
            to Down: local variable 'device' referenced before
            assignment (code=1)</big><br>
        </small></tt><br>
      Corresponding xml entry present in vm start config:<br>
      <br>
      <small>        &lt;hostdev mode="subsystem"
        type="usb"&gt;&lt;source&gt;&lt;vendor
        id="0x14a8"/&gt;&lt;product
        id="0x0001"/&gt;&lt;/source&gt;&lt;/hostdev&gt;&lt;/devices&gt;</small><br>
      <br>
      <br>
    </blockquote>
    <br>
    Dirty hack solves issue (I'm far away from python):<br>
    <br>
    <tt>--- vm.py.orig  2015-11-13 14:14:37.152170286 +0200</tt><tt><br>
    </tt><tt>+++ vm.py       2015-11-13 14:13:47.387855814 +0200</tt><tt><br>
    </tt><tt>@@ -4103,7 +4103,7 @@</tt><tt><br>
    </tt><tt>         for x in
      self._domain.get_device_elements('hostdev'):</tt><tt><br>
    </tt><tt>             device_type = x.getAttribute('type')</tt><tt><br>
    </tt><tt>             if device_type == 'usb':</tt><tt><br>
    </tt><tt>-                self._getUnderlyingHostDeviceUSBInfo(x)</tt><tt><br>
    </tt><tt>+#                self._getUnderlyingHostDeviceUSBInfo(x)</tt><tt><br>
    </tt><tt>                 continue</tt><tt><br>
    </tt><tt>             alias =
      x.getElementsByTagName('alias')[0].getAttribute('name')</tt><tt><br>
    </tt><tt>             address = self._getUnderlyingDeviceAddress(x)<br>
      <br>
    </tt>
  </body>
</html>