Re: [PATCH-v3.14.y 2/2] iser-target: Add missing se_cmd put for WRITE_PENDING in tx_comp_err

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 2014-05-03 at 14:16 -0400, Greg-KH wrote:
> 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.
> 

Sure, updated patch for v3.10.y on it's way now.

Thanks again.  :-)

--nab

--
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




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]