On Mon, Jun 25, 2012 at 11:41 AM, Tejun Heo <tj@xxxxxxxxxx> wrote: > On Mon, Jun 25, 2012 at 06:14:15PM +0000, Bart Van Assche wrote: >> From: Muthukumar Ratty <muthur@xxxxxxxxx> >> >> If the queue is dead blk_execute_rq_nowait() doesn't invoke the done() >> callback function. That will result in blk_execute_rq() being stuck >> in wait_for_completion(). Avoid this by initializing rq->end_io to the >> done() callback before we check the queue state. Also, make sure the >> queue lock is held around the invocation of the done() callback. Found >> this through source code review. >> >> Signed-off-by: Muthukumar Ratty <muthur@xxxxxxxxx> >> Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx> >> Cc: Tejun Heo <tj@xxxxxxxxxx> >> Cc: Jens Axboe <axboe@xxxxxxxxx> >> Cc: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> > > Acked-by: Tejun Heo <tj@xxxxxxxxxx> > > Thanks a lot! > Yep.. Thanks for the help Bart. > -- > tejun -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html