Re: 2.5.69, IDE TCQ can't be enabled

Jens Axboe (axboe@suse.de)
Tue, 13 May 2003 08:40:59 +0200


On Mon, May 12 2003, Jeff Garzik wrote:
> On Mon, May 12, 2003 at 09:42:45PM +0200, Jens Axboe wrote:
> > On Mon, May 12 2003, Jeff Garzik wrote:
> > > Most Linux people with TCQ drives seem to have Hitachi (nee IBM)
> > > ones AFAICS. These do not have a service interrupt (or at least,
> > > do not report such)
> >
> > Nonsense, it supports the service interrupt just fine. It will just
> > complain if you try to turn it off, iirc.
>
> Weird. Mine doesn't seem to assert it, nor does the identify page
> indicate it's supported. Maybe I have a broken drive firmware.

Then the linux code won't work on it, have you tried? I've tried a lot
of different IBM models, they all do service interrupts just fine.

> > > They do have the release interrupt.
> >
> > Which we don't use. To be interesting, you need to speculatively turn on
> > the dma engine for each command you want to start. If you don't do that,
> > then it's faster just to poll for release/no-release at command start
> > time.
>
> That's an annoying thing about ATA TCQ: the command _may_ execute
> immediately, or may be queued (even when queue is empty). At least
> that's how I read the code and specs...

That's correct, you can use the release interrupt to get around that...

> > I don't think the multiple pending _and_ active is that big a deal, and
> > besides _everybody_ uses write back caching on IDE which makes TCQ for
> > writes very uninteresting.
> [...]
> > I have to agree with Eric that the largest win is potentially not
> > getting hit by the rotational latency all the time. I don't think you'll
> > get much extra from actually having more than one active from the dma
> > POV.
>
> Yes and no. I am coming from a driver-complexity perspective:
> single-active is more annoying on the driver side.
>
> In terms of drive performance, multiple active probably doesn't make
> a huge difference. In terms of reduction in host CPU usage, there
> is a performance gain there with multiple active.

It should make a non-neglible difference in smart positioning in the
drive, some things just cannot be done in software for this stuff.

-- 
Jens Axboe

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/