Re: [PATCH 5/5] scsi: Remove scmd->tag

Finn Thain
2014-10-02T11:49:52Z

On Thu, 2 Oct 2014, Hannes Reinecke wrote:

> struct scsi_cmnd has a 'tag' field, which was supposed to be
> used to support SCSI-II tagged command queueing.
> In the end tagged command queueing support moved into the
> block layer, with the tag number available in the request.
> So the 'tag' field lost its original meaning and can be
> removed.

I'm pretty sure this patch will break atari_scsi. sun3_scsi does not
define SUPPORT_TAGS, so it should be mostly unaffected.

We may need to comment out the #define SUPPORT_TAGS in atari_scsi until
Michael and I figure out how to make the driver work with block layer
tags.

> diff --git a/drivers/scsi/NCR5380.c b/drivers/scsi/NCR5380.c
> index a0c8c5d..cb68089 100644
> --- a/drivers/scsi/NCR5380.c
> +++ b/drivers/scsi/NCR5380.c

...

> @@ -2748,7 +2747,7 @@ static int NCR5380_abort(Scsi_Cmnd * cmd) {
> if (cmd == tmp) {
> dprintk(NDEBUG_ABORT, "scsi%d : aborting disconnected command.\n", instance->host_no);
>
> - if (NCR5380_select(instance, cmd, (int) cmd->tag))
> + if (NCR5380_select(instance, cmd, cmd->request->tag))

NCR5380_select() does not use its tag parameter. I have a patch that
removes it. I'll send the first set of patches I've been working on.

--