]> xenbits.xensource.com Git - qemu-xen-unstable.git/commitdiff
block/iscsi: do not forget to logout from target
authorPeter Lieven <pl@kamp.de>
Thu, 16 Apr 2015 14:08:25 +0000 (16:08 +0200)
committerKevin Wolf <kwolf@redhat.com>
Tue, 28 Apr 2015 13:36:09 +0000 (15:36 +0200)
We actually were always impolitely dropping the connection and
not cleanly logging out.

CC: qemu-stable@nongnu.org
Signed-off-by: Peter Lieven <pl@kamp.de>
Message-id: 1429193313-4263-2-git-send-email-pl@kamp.de
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/iscsi.c

index ba33290000f17fc427acbf2b4a3d29214518f56a..be8af46adce4eeebdbb307c63400fda114d7d6fd 100644 (file)
@@ -1501,6 +1501,9 @@ out:
 
     if (ret) {
         if (iscsi != NULL) {
+            if (iscsi_is_logged_in(iscsi)) {
+                iscsi_logout_sync(iscsi);
+            }
             iscsi_destroy_context(iscsi);
         }
         memset(iscsilun, 0, sizeof(IscsiLun));
@@ -1514,6 +1517,9 @@ static void iscsi_close(BlockDriverState *bs)
     struct iscsi_context *iscsi = iscsilun->iscsi;
 
     iscsi_detach_aio_context(bs);
+    if (iscsi_is_logged_in(iscsi)) {
+        iscsi_logout_sync(iscsi);
+    }
     iscsi_destroy_context(iscsi);
     g_free(iscsilun->zeroblock);
     g_free(iscsilun->allocationmap);