On Fri, May 02, 2014 at 09:26:30PM +0000, Nicholas A. Bellinger wrote: > From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > > commit 03e7848a64ed535a30f5d7fc6dede2d5a6a2534b upstream. > > This patch fixes a bug where outstanding RDMA_READs with WRITE_PENDING > status require an extra target_put_sess_cmd() in isert_put_cmd() code > when called from isert_cq_tx_comp_err() + isert_cq_drain_comp_llist() > context during session shutdown. > > The extra kref PUT is required so that transport_generic_free_cmd() > invokes the last target_put_sess_cmd() -> target_release_cmd_kref(), > which will complete(&se_cmd->cmd_wait_comp) the outstanding se_cmd > descriptor with WRITE_PENDING status, and awake the completion in > target_wait_for_sess_cmds() to invoke TFO->release_cmd(). > > The bug was manifesting itself in target_wait_for_sess_cmds() where > a se_cmd descriptor with WRITE_PENDING status would end up sleeping > indefinately. > > Acked-by: Sagi Grimberg <sagig@xxxxxxxxxxxx> > Cc: Or Gerlitz <ogerlitz@xxxxxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> #3.10+ If you want this in 3.10, can you give me a backported version? This one doesn't apply in there. thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html