Re: [PATCH] block: add support for shared tag maps

James Bottomley
2006-09-18T19:11:07Z

On Mon, 2006-09-18 at 19:47 +0100, Christoph Hellwig wrote:
> these two calls look wrong here. scsi_activate_tcq is supposed to be
> called from slave_configure. similarly tagged_supported is probably
> going to be overwriten as part of the scanning process, but you already
> set it in slave_configure anyway.

I agree in principle. However, the driver is doing tags as indexes into
its own internal firmware sequencer. Thus, the first inquiry that comes
down has to go into the sequencer with a tag. Hence this charade to
turn on tagging in slave_alloc.

> > + if (unlikely(tag >= host->can_queue))
> > return SCSI_MLQUEUE_HOST_BUSY;
>
> Do we really need this check? I'm pretty sure the block layer never
> hands out tags bigger than what you told it to with scsi_activate_tcq.

Probably not.

James