libvirt/tests/bhyvexml2argvdata
Roman Bogorodskiy 803966c76d bhyve: fix SATA address allocation
As bhyve for a long time didn't have a notion of the explicit SATA
controller and created a controller for each drive, the bhyve driver
in libvirt acted in a similar way and didn't care about the SATA
controllers and assigned PCI addresses to drives directly, as
the generated command will look like this anyway:

 2:0,ahci-hd,somedisk.img

This no longer makes sense because:

 1. After commit c07d1c1c4f it's not possible to assign
    PCI addresses to disks
 2. Bhyve now supports multiple disk drives for a controller,
    so it's going away from 1:1 controller:disk mapping, so
    the controller object starts to make more sense now

So, this patch does the following:

 - Assign PCI address to SATA controllers (previously we didn't do this)
 - Assign disk addresses instead of PCI addresses for disks. Now, when
   building a bhyve command, we take PCI address not from the disk
   itself but from its controller
 - Assign addresses at XML parsing time using the
   assignAddressesCallback. This is done mainly for being able to
   verify address allocation via xml2xml tests
 - Adjust existing bhyvexml2{xml,argv} tests to chase the new
   address allocation

This patch is largely based on work of Fabian Freyer.
2017-01-30 20:48:42 +04:00
..
bhyvexml2argv-acpiapic.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-acpiapic.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-acpiapic.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-base.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-base.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-base.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-bhyveload-bootorder.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-bhyveload-bootorder.ldargs bhyve: bhyveload: respect boot dev and boot order 2016-01-25 04:19:33 +03:00
bhyvexml2argv-bhyveload-bootorder.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-bhyveload-bootorder1.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-bhyveload-bootorder1.ldargs bhyve: bhyveload: respect boot dev and boot order 2016-01-25 04:19:33 +03:00
bhyvexml2argv-bhyveload-bootorder1.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-bhyveload-bootorder2.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-bhyveload-bootorder3.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-bhyveload-bootorder3.ldargs bhyve: bhyveload: respect boot dev and boot order 2016-01-25 04:19:33 +03:00
bhyvexml2argv-bhyveload-bootorder3.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-bhyveload-bootorder4.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-bhyveload-bootorder5.xml bhyve: bhyveload: respect boot dev and boot order 2016-01-25 04:19:33 +03:00
bhyvexml2argv-bhyveload-explicitargs.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-bhyveload-explicitargs.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-bhyveload-explicitargs.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-console.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-console.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-console.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-custom-loader.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-custom-loader.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-custom-loader.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-disk-cdrom-grub.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-disk-cdrom-grub.devmap bhyvexml2argv: Add tests for domain-configured bootloader, args 2014-11-12 09:55:22 +01:00
bhyvexml2argv-disk-cdrom-grub.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-disk-cdrom-grub.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-disk-cdrom.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-disk-cdrom.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-disk-cdrom.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-disk-virtio.args bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-disk-virtio.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-disk-virtio.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-grub-bootorder.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-grub-bootorder.devmap drvbhyve: Use boot-order for grub-bhyve boot device 2014-11-13 15:40:48 +01:00
bhyvexml2argv-grub-bootorder.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-grub-bootorder.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-grub-bootorder2.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-grub-bootorder2.devmap drvbhyve: Use boot-order for grub-bhyve boot device 2014-11-13 15:40:48 +01:00
bhyvexml2argv-grub-bootorder2.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-grub-bootorder2.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-grub-defaults.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-grub-defaults.devmap bhyvexml2argv: Add tests for domain-configured bootloader, args 2014-11-12 09:55:22 +01:00
bhyvexml2argv-grub-defaults.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-grub-defaults.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-localtime.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-localtime.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-localtime.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-macaddr.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-macaddr.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-macaddr.xml bhyvexml2argvdata: Fix <drive/> addresses 2017-01-02 13:30:39 +01:00
bhyvexml2argv-metadata.xml tests: add bhyve xml2xml test 2014-04-08 20:50:36 +04:00
bhyvexml2argv-serial-grub-nocons.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-serial-grub-nocons.devmap bhyvexml2argv: Add test for grub console support 2014-11-12 09:55:22 +01:00
bhyvexml2argv-serial-grub-nocons.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-serial-grub-nocons.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-serial-grub.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-serial-grub.devmap bhyvexml2argv: Add test for grub console support 2014-11-12 09:55:22 +01:00
bhyvexml2argv-serial-grub.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-serial-grub.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00
bhyvexml2argv-serial.args bhyve: fix SATA address allocation 2017-01-30 20:48:42 +04:00
bhyvexml2argv-serial.ldargs tests: redo test argv file line wrapping 2015-11-09 15:50:39 +00:00
bhyvexml2argv-serial.xml bhyvexml2argvdata: Add mac address to <interface/> 2017-01-02 13:30:39 +01:00