]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Fix vPort management: FC vHBA creation
authorDennis Chen <xschen@tnsoft.com.cn>
Fri, 28 Jun 2013 09:59:51 +0000 (11:59 +0200)
committerJán Tomko <jtomko@redhat.com>
Fri, 28 Jun 2013 10:13:28 +0000 (12:13 +0200)
When creating a virtual FC HBA with virsh/libvirt API, an error message
will be returned: "error: Node device not found",
also the 'nodedev-dumpxml' shows wrong information of wwpn & wwnn
for the new created device.

Signed-off-by: xschen@tnsoft.com.cn
This reverts f90af69 which switched wwpn & wwwn in the wrong place.

https://www.kernel.org/doc/Documentation/scsi/scsi_fc_transport.txt

src/storage/storage_backend_scsi.c
src/util/virutil.c

index 285c5cbf10c5bed31e7818996a5f7b267b894e67..3decedaa9fbeb83d0d350ed591d049b1a6604533 100644 (file)
@@ -659,8 +659,8 @@ createVport(virStoragePoolSourceAdapter adapter)
     if (getHostNumber(adapter.data.fchost.parent, &parent_host) < 0)
         return -1;
 
-    if (virManageVport(parent_host, adapter.data.fchost.wwnn,
-                       adapter.data.fchost.wwpn, VPORT_CREATE) < 0)
+    if (virManageVport(parent_host, adapter.data.fchost.wwpn,
+                       adapter.data.fchost.wwnn, VPORT_CREATE) < 0)
         return -1;
 
     virFileWaitForDevices();
@@ -682,8 +682,8 @@ deleteVport(virStoragePoolSourceAdapter adapter)
     if (getHostNumber(adapter.data.fchost.parent, &parent_host) < 0)
         return -1;
 
-    if (virManageVport(parent_host, adapter.data.fchost.wwnn,
-                       adapter.data.fchost.wwpn, VPORT_DELETE) < 0)
+    if (virManageVport(parent_host, adapter.data.fchost.wwpn,
+                       adapter.data.fchost.wwnn, VPORT_DELETE) < 0)
         return -1;
 
     return 0;
index 6fa0212e9421aebf22ecf9ad30396f7dbe4a5cb7..569d03518242049851cf7c99667c10f6495b3d8e 100644 (file)
@@ -1792,8 +1792,8 @@ virManageVport(const int parent_host,
 
     if (virAsprintf(&vport_name,
                     "%s:%s",
-                    wwnn,
-                    wwpn) < 0) {
+                    wwpn,
+                    wwnn) < 0) {
         virReportOOMError();
         goto cleanup;
     }