Messages in this thread Patch in this message | | | Date | Wed, 10 Sep 2014 08:45:35 -0700 | From | Christoph Hellwig <> | Subject | Re: [REGRESSION 3.17] scsi (uas) disks no longer using tagged command queuing |
| |
On Wed, Sep 10, 2014 at 09:21:24AM +0200, Hans de Goede wrote: > I've applied the patch, this results in the following new dmesg output > when using uas: > > [ 120.602632] initialized host-wide tag map! > > Thank you for looking into this.
So we're initializing the tag map, but scsi_activate_tcq doesn't pick it up. I can't really come up with a good explanation for it, but there even without that there is an elephant in the room: as part of the scsi-mq series I moved the bqt field used for this into a union with the new blk_mq_tag_set. Below is a patch to get rid of that union, can you try if that fixes it?
diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h index d0f69a3..bcffff2 100644 --- a/include/scsi/scsi_host.h +++ b/include/scsi/scsi_host.h @@ -584,10 +584,8 @@ struct Scsi_Host { * Area to keep a shared tag map (if needed, will be * NULL if not). */ - union { - struct blk_queue_tag *bqt; - struct blk_mq_tag_set tag_set; - }; + struct blk_queue_tag *bqt; + struct blk_mq_tag_set tag_set; atomic_t host_busy; /* commands actually active on low-level */ atomic_t host_blocked;
| |