Thread (8 messages) 8 messages, 4 authors, 2016-06-13

Re: [PATCH v3 3/3] Add ata pass-through path for ZAC commands.

From: Hannes Reinecke <hare@suse.de>
Date: 2016-06-10 07:19:33
Also in: linux-ide, linux-scsi

On 06/10/2016 09:10 AM, Shaun Tancheff wrote:
The current generation of HBA SAS adapters support connecting SATA
drives and perform SCSI<->ATA translations in hardware.
Unfortunately the ZBC commands are not being translate (yet).

Currently users of SAS controllers can only send ZAC commands via
ata pass-through.

This method overloads the meaning of REQ_META to direct ZBC commands
to construct ZAC equivalent ATA pass through commands.
Note also that this approach expects the initiator to deal with the
little endian result due to bypassing the normal translation layers.

Signed-off-by: Shaun Tancheff <redacted>
---
So this patch isn't the right way to work around hardware that is
missing features (mixing ATA commands in SCSI interface code) it
maybe useful for end users in the near term who have HBA SAS
controllers that don't support ZBC <-> ZAC translations.
And indeed, this patch isn't right.
It is just for a very specific SAS HBA (mpt2sas/mpt3sas).
Other SAS HBAs like isci and hisi_sas work just nicely here.
So a translation into a ATA_16 command is _wrong_.
If you need to do this you'll have to move it into the LLDD itself.
Or use blacklisting to invoke this behaviour.
But _not_ in the general code path.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		   Teamlead Storage & Networking
hare@suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 N�rnberg
GF: F. Imend�rffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG N�rnberg)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help