Re: [PATCH 1/7] qla2xxx: Make qla_tgt_handle_cmd_for_atio use single queue_work

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

 



On Mon, 2011-11-28 at 03:04 -0500, Christoph Hellwig wrote:
> On Sun, Nov 27, 2011 at 01:06:30AM +0000, Nicholas A. Bellinger wrote:
> > From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
> > 
> > This patch makes qla_tgt_handle_cmd_for_atio() use single queue_work
> > for both session active cases.
> 
> > +	if (IS_FWI2_CAPABLE(ha))
> > +		sess = ha->tgt_ops->find_sess_by_s_id(vha,
> > +					atio->u.isp24.fcp_hdr.s_id);
> > +	else
> > +		sess = ha->tgt_ops->find_sess_by_loop_id(vha,
> > +					GET_TARGET_ID(ha, atio));
> > +
> > +	if (unlikely(!sess)) {
> 
> > +		goto out_sched;
> >  	}
> >  
> >  	if (sess->tearing_down || tgt->tgt_stop)
> > @@ -3184,6 +3190,7 @@ static int qla_tgt_handle_cmd_for_atio(struct scsi_qla_host *vha,
> >  	*/
> >  	kref_get(&sess->sess_kref);
> >  
> > +out_sched:
> >  	INIT_WORK(&cmd->work, qla_tgt_do_work);
> 
> So this still tries to grab a reference to the session from irq context
> first and only delays it if the easy way to grab it fails.  I'd be much
> happier if session lookup would always happen in user context, but for
> now it's a step forward, so I'm okay with it.
> 

Thanks.  I am running a bit behind on the conversion to use a different
lock for session lookup in qla_target.c code, but should be getting to
this over the next days.

--
To unsubscribe from this list: send the line "unsubscribe target-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux