On Fri, Oct 07 2005, Chen, Kenneth W wrote:
> Jens Axboe wrote on Friday, October 07, 2005 12:24 AM
> > I don't understand the need for this patch - the generic tagging is
> only
> > used if the SCSI LLD indicated it wanted it by issuing a
> > scsi_activate_tcq(). So blk_queue_start_tag() is only called if the
> LLD
> > already did a scsi_activate_tcq(), and blk_queue_end_tag() is only
> > called if the rq is block layer tagged. blk_queue_find_tag() is only
> > used with direct use of scsi_find_tag(), a function that should (and
> is)
> > only usable by users of the generic tagging already.
> >
>
> You beat me by a couple of minutes. I was about to say that the culprit
> is in the qla2x00 driver where it unnecessarily activated generic blk
> tag queuing by calling scsi_activate_tcq() and it never uses tag.
>
> > So please, a description of what problem you are trying to solve would
> > be appreciated :-)
>
> It starts out with scsi_end_request being a fairly hot function in the
> execution profile, then I noticed blk_queue_start/end_tag() are being
> called but no actual consumer of using the tag. I'm trying to find a
> way to avoid making these blk_queue_start/end_tag calls. I got the
> answer
> now. The proper way is to fix it in the scsi LLDD. Scratch this patch,
> new patch to follow :-)
Ok that makes more sense! But it's a little worrying that
blk_queue_end_tag() would show up as hot in the profile, it is actually
quite lean.
--
Jens Axboe
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]