Hey Hannes,

Do you only need this patch with your cmdsn patch?

The code below is a leftover from when I had the cmdsn check in 
iscsi_datra_xmit. I am not sure why we would need to wake the xmit 
thread. The reasons I have:

1. queuecommand or __iscsi_conn_send_pdu adds new task.
2. sendpage returns -EAGAIN. For this iscsi_tcp should call wake the 
xmit thread from write_space right? Is there another error sendpage 
could throw where write_space is not called like maybe a connection problem?
3. xmit thread was suspended for eh purposes.

With your cmdsn patch
4. If you return from iscsi_data_xmit because you think the window is 
closed. Did you try the queued_cmdsn lt vs lte patch, or heard back from 
the hp guys about their handling of data-outs when the window is closed btw?


Hannes Reinecke wrote:
> 
> There is another issue leading to an I/O stall:
> when there is a command pending to be retried, ie conn->task is set after
> we exit xmitworker(), the next incoming PDU will not trigger the
> xmit thread as the queues might be empty, although a command is still
> pending.
> 
> Try this:
> diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
> index 716cc34..4493cd4 100644
> --- a/drivers/scsi/libiscsi.c
> +++ b/drivers/scsi/libiscsi.c
> @@ -133,9 +133,7 @@ iscsi_update_cmdsn(struct iscsi_session *session, struct 
> iscsi_
> nopin *hdr)
>                  * if the window closed with IO queued, then kick the
>                  * xmit thread
>                  */
> -               if (!list_empty(&session->leadconn->cmdqueue) ||
> -                   !list_empty(&session->leadconn->mgmtqueue))
> -                       iscsi_conn_queue_work(session->leadconn);
> +               iscsi_conn_queue_work(session->leadconn);
>         }
>  }
>  EXPORT_SYMBOL_GPL(iscsi_update_cmdsn);
> 
> Cheers,
> 
> Hannes


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-iscsi@googlegroups.com
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/open-iscsi
-~----------~----~----~----~------~----~------~--~---

Reply via email to