ping? Don't bother with the 8th patch since that seems to be a moot point now given that a callback mechanism between qemu and nodedev seems to have been taken off the table after Daniel and Paolo's discussion. Tks - John On 02/20/2017 08:18 AM, John Ferlan wrote: > Similar to the recent node device focused vHBA patches, but these focus > more on adjustments to the Storage Pool vHBA logic and finally the mechanism > to define a vHBA for a domain. > > The first patch fixes a leak found by coverity that showed up because > node_device_conf had enough changes so that coverity looked harder... > > The second patch creates a mechanism to mock creation of the vHBA in > order to test the ability for the storage pool to create a vHBA. As > much as I dislike forward refs for testNodeDeviceMockCreateVport, it > was better than moving all the code.... > > The third patch extracts out storage device mgmt into it's own set of > src/util API's - similar to the existing virstoragefile, but for devices. > > The fourth patch was uncovered while moving code from storage_backend_scsi > into node_device_conf (the fifth patch)... > > The fifth patch moves the createVport/deleteVport guts into the > node_device_conf (although they could have moved to virvhba)... > > The sixth patch alters the logic to use the node_device API's as the > "preferred" mechanism to create/delete the vport... > > The seventh patch tests the storage pool vHBA creation algorithms. > > The eigth patch is the reason for all this stirring of the pot. Alter > the domain <controller> XML in order to allow definition of a vHBA which > more or less sits between a "scsi_hostX" host device and a controller. This > is in preparation for https://bugzilla.redhat.com/show_bug.cgi?id=1404962 > which can take that created vHBA and automagically add the LUNs from the > vHBA to the domain although that requires a bit more magic for which there > are already onlist patches to let qemu driver know when a node device has > been added/removed. Once all that's in place - the next step will be to > converge the two sets of patches. It's a chicken/egg type problem - one > has to exist before the other can truly work. > > > John Ferlan (8): > conf: Fix leak in virNodeDeviceDefParseXML > tests: Add createVHBAByStoragePool-by-parent to fchosttest > util: Convert virStoragePoolSourceAdapter to virStorageAdapter > util: Rename virFileWaitForDevices > storage: Move/rename createVport and deleteVport > util: Alter virNodeDevice{Create|Delete}Vport to use nodedev APIs > tests: Add more storage pool vHBA tests > conf: Add vHBA controller definition to domain > > docs/schemas/basictypes.rng | 66 ++-- > docs/schemas/domaincommon.rng | 12 +- > po/POTFILES.in | 1 + > src/Makefile.am | 1 + > src/conf/domain_audit.c | 32 ++ > src/conf/domain_conf.c | 180 ++++++++++- > src/conf/domain_conf.h | 2 + > src/conf/node_device_conf.c | 342 ++++++++++++++++++++- > src/conf/node_device_conf.h | 9 + > src/conf/storage_conf.c | 338 +++++--------------- > src/conf/storage_conf.h | 35 +-- > src/libvirt_private.syms | 20 +- > src/libxl/libxl_conf.c | 1 + > src/node_device/node_device_driver.c | 2 +- > src/phyp/phyp_driver.c | 3 +- > src/qemu/qemu_alias.c | 5 + > src/qemu/qemu_command.c | 4 + > src/qemu/qemu_hotplug.c | 16 + > src/storage/storage_backend_disk.c | 6 +- > src/storage/storage_backend_iscsi.c | 2 +- > src/storage/storage_backend_logical.c | 4 +- > src/storage/storage_backend_mpath.c | 2 +- > src/storage/storage_backend_scsi.c | 267 +++------------- > src/storage/storage_util.c | 2 +- > src/test/test_driver.c | 101 +++++- > src/util/virfile.h | 2 - > src/util/virscsihost.c | 28 +- > src/util/virscsihost.h | 8 +- > src/util/virstoragedevice.c | 292 ++++++++++++++++++ > src/util/virstoragedevice.h | 89 ++++++ > src/util/virutil.c | 4 +- > src/util/virutil.h | 2 + > tests/fchosttest.c | 111 +++++++ > .../qemuxml2argv-vhba-no-parent.xml | 38 +++ > .../qemuxml2argv-vhba-parent-fabric.xml | 38 +++ > .../qemuxml2argv-vhba-parent-name.xml | 38 +++ > .../qemuxml2argv-vhba-parent-wwns.xml | 38 +++ > .../qemuxml2xmlout-vhba-no-parent.xml | 47 +++ > .../qemuxml2xmlout-vhba-parent-fabric.xml | 47 +++ > .../qemuxml2xmlout-vhba-parent-name.xml | 47 +++ > .../qemuxml2xmlout-vhba-parent-wwns.xml | 47 +++ > tests/qemuxml2xmltest.c | 9 + > 42 files changed, 1727 insertions(+), 611 deletions(-) > create mode 100644 src/util/virstoragedevice.c > create mode 100644 src/util/virstoragedevice.h > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-vhba-no-parent.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-vhba-parent-fabric.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-vhba-parent-name.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-vhba-parent-wwns.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-vhba-no-parent.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-vhba-parent-fabric.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-vhba-parent-name.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-vhba-parent-wwns.xml > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list