All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: Shaun Tancheff <shaun@tancheff.com>,
	linux-ide@vger.kernel.org, linux-block@vger.kernel.org,
	linux-scsi@vger.kernel.org
Cc: Jens Axboe <axboe@kernel.dk>,
	"James E . J . Bottomley" <jejb@linux.vnet.ibm.com>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	Jeff Layton <jlayton@poochiereds.net>,
	"J . Bruce Fields" <bfields@fieldses.org>,
	Shaun Tancheff <shaun.tancheff@seagate.com>
Subject: Re: [PATCH v3 3/3] Add ata pass-through path for ZAC commands.
Date: Fri, 10 Jun 2016 09:19:33 +0200	[thread overview]
Message-ID: <575A6A05.1090006@suse.de> (raw)
In-Reply-To: <1465542626-26536-4-git-send-email-shaun@tancheff.com>

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 <shaun.tancheff@seagate.com>
> ---
> 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)

WARNING: multiple messages have this Message-ID (diff)
From: Hannes Reinecke <hare@suse.de>
To: Shaun Tancheff <shaun@tancheff.com>,
	linux-ide@vger.kernel.org, linux-block@vger.kernel.org,
	linux-scsi@vger.kernel.org
Cc: Jens Axboe <axboe@kernel.dk>,
	"James E . J . Bottomley" <jejb@linux.vnet.ibm.com>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	Jeff Layton <jlayton@poochiereds.net>,
	"J . Bruce Fields" <bfields@fieldses.org>,
	Shaun Tancheff <shaun.tancheff@seagate.com>
Subject: Re: [PATCH v3 3/3] Add ata pass-through path for ZAC commands.
Date: Fri, 10 Jun 2016 09:19:33 +0200	[thread overview]
Message-ID: <575A6A05.1090006@suse.de> (raw)
In-Reply-To: <1465542626-26536-4-git-send-email-shaun@tancheff.com>

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 <shaun.tancheff@seagate.com>
> ---
> 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)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2016-06-10  7:19 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-10  7:10 [PATCH v3 0/3] Block layer support ZAC/ZBC commands Shaun Tancheff
2016-06-10  7:10 ` [PATCH v3 1/3] Add bio/request flags for using ZBC/ZAC commands Shaun Tancheff
2016-06-10  7:10 ` [PATCH v3 2/3] Add ioctl to issue ZBC/ZAC commands via block layer Shaun Tancheff
2016-06-10  7:10 ` [PATCH v3 3/3] Add ata pass-through path for ZAC commands Shaun Tancheff
2016-06-10  7:19   ` Hannes Reinecke [this message]
2016-06-10  7:19     ` Hannes Reinecke
2016-06-10  7:28     ` Shaun Tancheff
2016-06-10  7:28       ` Shaun Tancheff
2016-06-10  7:13 ` [PATCH v3 1/3] Add bio/request flags for using ZBC/ZAC commands Shaun Tancheff
2016-06-13  8:01   ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=575A6A05.1090006@suse.de \
    --to=hare@suse.de \
    --cc=axboe@kernel.dk \
    --cc=bfields@fieldses.org \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=jlayton@poochiereds.net \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=shaun.tancheff@seagate.com \
    --cc=shaun@tancheff.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.