Re: Status of NCQ in libata

From: Jens Axboe
Date: Wed Mar 29 2006 - 02:43:46 EST


On Wed, Mar 29 2006, Dan Aloni wrote:
> On Wed, Mar 29, 2006 at 01:13:52PM +0900, Tejun Heo wrote:
> > Jens Axboe wrote:
> > >On Sun, Mar 26 2006, Dan Aloni wrote:
> > >>Hello,
> > >>
> > >>I'd like to know about the current status of NCQ support in libata,
> > >>whether anyone is actively working on it, where I should find a
> > >>development branch (there's no ncq branch anymore in libata-dev.git
> > >>it seems) and when an upstream merge should be expected.
> > >
> > >You can give it a spin in the 'ncq' branch in the block layer git repo:
> > >
> > >git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git
> > >
> > >Only one real bit needs to get merged in libata for ncq to be submitted,
> > >and that is Tejun's eh rework. Once that is in, ncq becomes a fairly
> > >small patch and can probably go straight in.
> > >
> > >AHCI is still the only supported controller, once NCQ is merged I'm sure
> > >a few others will follow.
> > >
> >
> > Patches going out later today. :) I've just ported the NCQ stuff over it
> > and about to test it. As I have the doc and hardware NCQ support for
> > sata_sil24 will soon follow.
>
> Good to see it's going well. I'm considering to implement NCQ/TCQ for
> sata_mv (I have the necessary resources for it), so I'm hoping that I'd be
> able to base my efforts on the current ncq branch without worrying too
> much about interface changes.

As seen from the low level sata driver, there isn't much interface to
change. Basically you just want to signal a higher queueing depth, which
will enable the SCSI layer to queue a higher number of ios at any time.
The rest is up to you, how you actually talk to the hardware. Then
there's error handling, I don't think much will change there after
Tejuns merge either.

So if you started off the 'ncq' branch in the block repo, you should be
able to pretty much cary your sata_mv changes straight over. Any change
needed would be to accomodate other libata changes, not ncq.

--
Jens Axboe

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