> -----Original Message-----
> From: Bart Van Assche [mailto:bvanass...@acm.org]
> Sent: Tuesday, 07 October, 2014 8:07 AM
...
> @@ -1927,7 +1931,7 @@ static int srp_queuecommand(struct Scsi_Host
> *shost, struct scsi_cmnd *scmnd)
> 
>       cmd->opcode = SRP_CMD;
>       cmd->lun    = cpu_to_be64((u64) scmnd->device->lun << 48);
> -     cmd->tag    = req->index;
> +     cmd->tag    = tag;
>       memcpy(cmd->cdb, scmnd->cmnd, scmnd->cmd_len);
> 
>       req->scmnd    = scmnd;
...
> 
> +static int srp_slave_alloc(struct scsi_device *sdev)
> +{
> +     sdev->tagged_supported = 1;
> +
> +     scsi_activate_tcq(sdev, sdev->queue_depth);
> +
> +     return 0;
> +}
> +

Have you tested this with scsi_mod.use_blk_mq=n?

Trying similar changes in hpsa, we still receive some INQUIRY commands 
submitted through queuecommand with tag -1.  They are for devices for
which slave_alloc has not yet been run, implying this work needs to 
be done even earlier.  Maybe the midlayer is missing a slave_alloc
call somewhere?

---
Rob Elliott    HP Server Storage



N�����r��y����b�X��ǧv�^�)޺{.n�+����{���"�{ay�ʇڙ�,j��f���h���z��w���
���j:+v���w�j�m��������zZ+�����ݢj"��!�i

Reply via email to