All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 2/7] nvme-fabrics: sync FC-NVME header with standard updates
@ 2016-10-04  6:26 James Smart
  2016-10-04  7:33 ` Hannes Reinecke
  2016-10-04 13:57 ` Christoph Hellwig
  0 siblings, 2 replies; 3+ messages in thread
From: James Smart @ 2016-10-04  6:26 UTC (permalink / raw)



Sync FC-NVME header with standard updates

This patch contains the following 2 mods:
- Since the prior patch posting, transports were assigned a status
  code range to use (0xB0-0xBF). Updated codes to be in the range
- cmd_iu changed in T11. The 2 reserved words, previous at words
  2 and 3, were moved to after the sqe.

Signed-off-by: James Smart <james.smart at broadcom.com>
---
 include/linux/nvme-fc.h | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/include/linux/nvme-fc.h b/include/linux/nvme-fc.h
index 99e9200..da877c2 100644
--- a/include/linux/nvme-fc.h
+++ b/include/linux/nvme-fc.h
@@ -38,11 +38,11 @@ struct nvme_fc_cmd_iu {
 	__be16			iu_len;
 	__u8			rsvd4[3];
 	__u8			flags;
-	__be32			rsvd8[2];
 	__be64			connection_id;
 	__be32			csn;
 	__be32			data_len;
 	struct nvme_command	sqe;
+	__be32			rsvd88[2];
 };
 
 #define NVME_FC_SIZEOF_ZEROS_RSP	12
@@ -265,30 +265,23 @@ struct fcnvme_ls_disconnect_acc {
 /*
  * FC Transport-specific error status values for NVME commands
  *
- * Need to incorporate into NVME Over Fabrics standard
- *
- * A request has been made to include transport-specific status values
- * into the standard but it is not yet complete/defined.
- *
- * For now, we will use a range within the Fabric values.  The range
- * will be 0xA0-0xBF, which is a reserved area in the fabric spec.
- * Currently, Only the values below have been defined within that range.
+ * Transport-specific status code values must be in the range 0xB0..0xBF
  */
 enum {
 	/* Generic FC failure - catchall */
-	NVME_SC_FC_TRANSPORT_ERROR	= 0x00A0,
+	NVME_SC_FC_TRANSPORT_ERROR	= 0x00B0,
 
 	/* I/O failure due to FC ABTS'd */
-	NVME_SC_FC_TRANSPORT_ABORTED	= 0x00A1,
+	NVME_SC_FC_TRANSPORT_ABORTED	= 0x00B1,
 
 	/* FC Transport Connection in error */
-	NVME_SC_FC_NO_CONNECTION	= 0x40A2,	/* not retryable */
+	NVME_SC_FC_NO_CONNECTION	= 0x40B2,	/* not retryable */
 
 	/* NVME Completion did not contain original CMDID */
-	NVME_SC_FC_CMDID_MISMATCH	= 0x00A3,
+	NVME_SC_FC_CMDID_MISMATCH	= 0x00B3,
 
 	/* IU format error */
-	NVME_SC_FC_FORMAT		= 0x00A4,
+	NVME_SC_FC_FORMAT		= 0x00B4,
 };
 
 
-- 
2.5.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/7] nvme-fabrics: sync FC-NVME header with standard updates
  2016-10-04  6:26 [PATCH 2/7] nvme-fabrics: sync FC-NVME header with standard updates James Smart
@ 2016-10-04  7:33 ` Hannes Reinecke
  2016-10-04 13:57 ` Christoph Hellwig
  1 sibling, 0 replies; 3+ messages in thread
From: Hannes Reinecke @ 2016-10-04  7:33 UTC (permalink / raw)


On 10/04/2016 08:26 AM, James Smart wrote:
> 
> Sync FC-NVME header with standard updates
> 
> This patch contains the following 2 mods:
> - Since the prior patch posting, transports were assigned a status
>   code range to use (0xB0-0xBF). Updated codes to be in the range
> - cmd_iu changed in T11. The 2 reserved words, previous at words
>   2 and 3, were moved to after the sqe.
> 
> Signed-off-by: James Smart <james.smart at broadcom.com>
> ---
>  include/linux/nvme-fc.h | 21 +++++++--------------
>  1 file changed, 7 insertions(+), 14 deletions(-)
> 
> diff --git a/include/linux/nvme-fc.h b/include/linux/nvme-fc.h
> index 99e9200..da877c2 100644
> --- a/include/linux/nvme-fc.h
> +++ b/include/linux/nvme-fc.h
> @@ -38,11 +38,11 @@ struct nvme_fc_cmd_iu {
>  	__be16			iu_len;
>  	__u8			rsvd4[3];
>  	__u8			flags;
> -	__be32			rsvd8[2];
>  	__be64			connection_id;
>  	__be32			csn;
>  	__be32			data_len;
>  	struct nvme_command	sqe;
> +	__be32			rsvd88[2];
>  };
>  
>  #define NVME_FC_SIZEOF_ZEROS_RSP	12
> @@ -265,30 +265,23 @@ struct fcnvme_ls_disconnect_acc {
>  /*
>   * FC Transport-specific error status values for NVME commands
>   *
> - * Need to incorporate into NVME Over Fabrics standard
> - *
> - * A request has been made to include transport-specific status values
> - * into the standard but it is not yet complete/defined.
> - *
> - * For now, we will use a range within the Fabric values.  The range
> - * will be 0xA0-0xBF, which is a reserved area in the fabric spec.
> - * Currently, Only the values below have been defined within that range.
> + * Transport-specific status code values must be in the range 0xB0..0xBF
>   */
>  enum {
>  	/* Generic FC failure - catchall */
> -	NVME_SC_FC_TRANSPORT_ERROR	= 0x00A0,
> +	NVME_SC_FC_TRANSPORT_ERROR	= 0x00B0,
>  
>  	/* I/O failure due to FC ABTS'd */
> -	NVME_SC_FC_TRANSPORT_ABORTED	= 0x00A1,
> +	NVME_SC_FC_TRANSPORT_ABORTED	= 0x00B1,
>  
>  	/* FC Transport Connection in error */
> -	NVME_SC_FC_NO_CONNECTION	= 0x40A2,	/* not retryable */
> +	NVME_SC_FC_NO_CONNECTION	= 0x40B2,	/* not retryable */
>  
>  	/* NVME Completion did not contain original CMDID */
> -	NVME_SC_FC_CMDID_MISMATCH	= 0x00A3,
> +	NVME_SC_FC_CMDID_MISMATCH	= 0x00B3,
>  
>  	/* IU format error */
> -	NVME_SC_FC_FORMAT		= 0x00A4,
> +	NVME_SC_FC_FORMAT		= 0x00B4,
>  };
>  
>  
> 
Any particular reason why this is not merged with the previous patch?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare at suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg
GF: J. Hawn, J. Guild, F. Imend?rffer, HRB 16746 (AG N?rnberg)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 2/7] nvme-fabrics: sync FC-NVME header with standard updates
  2016-10-04  6:26 [PATCH 2/7] nvme-fabrics: sync FC-NVME header with standard updates James Smart
  2016-10-04  7:33 ` Hannes Reinecke
@ 2016-10-04 13:57 ` Christoph Hellwig
  1 sibling, 0 replies; 3+ messages in thread
From: Christoph Hellwig @ 2016-10-04 13:57 UTC (permalink / raw)


On Mon, Oct 03, 2016@11:26:58PM -0700, James Smart wrote:
> 
> Sync FC-NVME header with standard updates
> 
> This patch contains the following 2 mods:
> - Since the prior patch posting, transports were assigned a status
>   code range to use (0xB0-0xBF). Updated codes to be in the range
> - cmd_iu changed in T11. The 2 reserved words, previous at words
>   2 and 3, were moved to after the sqe.
> 
> Signed-off-by: James Smart <james.smart at broadcom.com>

As Hannes already mentioned: please squash the spec updated into the
original patches.

>  enum {
>  	/* Generic FC failure - catchall */
> -	NVME_SC_FC_TRANSPORT_ERROR	= 0x00A0,
> +	NVME_SC_FC_TRANSPORT_ERROR	= 0x00B0,

Please add the error values to nvme.h itself so they are in the
same place as the other error codes.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-10-04 13:57 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-04  6:26 [PATCH 2/7] nvme-fabrics: sync FC-NVME header with standard updates James Smart
2016-10-04  7:33 ` Hannes Reinecke
2016-10-04 13:57 ` Christoph Hellwig

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.