Reviewed-By: Ronnie Sahlberg <ronniesahlb...@gmail.com>

On Tue, Apr 14, 2015 at 1:37 AM, Peter Lieven <p...@kamp.de> wrote:
> We actually were always impolitely dropping the connection and
> not cleanly logging out.
>
> Cc: qemu-sta...@nongnu.org
> Signed-off-by: Peter Lieven <p...@kamp.de>
> ---
>  block/iscsi.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/block/iscsi.c b/block/iscsi.c
> index ab20e4d..0b6d3dd 100644
> --- a/block/iscsi.c
> +++ b/block/iscsi.c
> @@ -1503,6 +1503,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));
> @@ -1516,6 +1519,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);
> --
> 1.9.1
>

Reply via email to