Comment 7 for bug 1715569

Revision history for this message
melanie witt (melwitt) wrote :

Thanks Mike for providing detail of the change in the XML after the update function.

I dug around in the code and based on the XML excerpt you show, this appears to be a regression caused by this patch [1] (which was also backported to ocata) which made a change to the libvirt driver _get_volume_config function. It added code to set the 'address' XML element when 'bus' == 'iscsi' when previously the 'address' element was left unmodified. The patch sets the address.controller element to 0 and sets the address.unit element only if it's been set in disk_info. And it's only set in disk_info in the attach_volume function in the driver, so that's why we're not seeing it set to 1 as expected during a live migration (attach_volume is not called). So we see it getting set as 0 in the original error message in comment 1:

"Live Migration failure: unsupported configuration: Target device drive address 0:0:0 does not match source 0:0:1: libvirtError: unsupported configuration: Target device drive address 0:0:0 does not match source 0:0:1"

So it seems to be the right thing to do to avoid modifying the address element for live migration only (as the proposed patch is doing).

[1] https://review.openstack.org/#/c/459741