https://bugzilla.redhat.com/show_bug.cgi?id=1349696
Lots of details in the bz, but essentially the problem is that providing
a "parent" scsi_hostX value has drawbacks on reboots because what was
scsi_hostX could turn into scsi_hostY on subsequent reboots.
So add the ability to use the parent wwnn/wwpn or fabric_wwn as 'search'
criteria in order to create either non persistent vHBA's via nodedev or
persistent vHBA's via storage pools.
NB: Documentation of this "process" is on the wiki:
http://wiki.libvirt.org/page/NPIV_in_libvirt
and would need to be adjusted once/if the changes are accepted.
John Ferlan (11):
nodedev: Fix crash in libvirtd on vHBA creation path
nodedev: Create helpers to search for vport capable nodedevs
nodedev: Add ability to find a vport capable vHBA
nodedev: Add the ability to create vHBA by parent wwnn/wwpn or
fabric_wwn
conf: Add more fchost search fields for storage pool vHBA creation
iscsi: Clean up createVport exit paths
iscsi: Change order of checks in createVport
iscsi: Converge more createVport checks
util: Remove need for extra VIR_FREE's in virGetFCHostNameByWWN
util: Introduce virGetFCHostNameByFabricWWN
iscsi: Add parent wwnn/wwpn or fabric capability for createVport
docs/schemas/basictypes.rng | 15 +++
docs/schemas/nodedev.rng | 15 +++
src/conf/node_device_conf.c | 234 +++++++++++++++++++++++++++++++----
src/conf/node_device_conf.h | 17 +++
src/conf/storage_conf.c | 21 +++-
src/conf/storage_conf.h | 3 +
src/libvirt_private.syms | 4 +
src/node_device/node_device_driver.c | 28 ++++-
src/storage/storage_backend_scsi.c | 86 +++++++------
src/util/virutil.c | 113 ++++++++++++-----
src/util/virutil.h | 4 +
11 files changed, 439 insertions(+), 101 deletions(-)