[PATCH 3/6] ibmvfc: add new fields for version 2 of several MADs

Brian King brking at linux.vnet.ibm.com
Wed Nov 18 09:06:50 AEDT 2020


On 11/11/20 7:04 PM, Tyrel Datwyler wrote:
> @@ -211,7 +214,9 @@ struct ibmvfc_npiv_login_resp {
>  	__be64 capabilities;
>  #define IBMVFC_CAN_FLUSH_ON_HALT	0x08
>  #define IBMVFC_CAN_SUPPRESS_ABTS	0x10
> -#define IBMVFC_CAN_SUPPORT_CHANNELS	0x20
> +#define IBMVFC_MAD_VERSION_CAP		0x20
> +#define IBMVFC_HANDLE_VF_WWPN		0x40
> +#define IBMVFC_CAN_SUPPORT_CHANNELS	0x80
>  	__be32 max_cmds;
>  	__be32 scsi_id_sz;
>  	__be64 max_dma_len;
> @@ -293,6 +298,7 @@ struct ibmvfc_port_login {
>  	__be32 reserved2;
>  	struct ibmvfc_service_parms service_parms;
>  	struct ibmvfc_service_parms service_parms_change;
> +	__be64 targetWWPN;

For consistency, can you make this target_wwpn?

>  	__be64 reserved3[2];
>  } __packed __aligned(8);
>  
> @@ -344,6 +350,7 @@ struct ibmvfc_process_login {
>  	__be16 status;
>  	__be16 error;			/* also fc_reason */
>  	__be32 reserved2;
> +	__be64 targetWWPN;

For consistency, can you make this target_wwpn?

>  	__be64 reserved3[2];
>  } __packed __aligned(8);
>  
> @@ -378,6 +385,8 @@ struct ibmvfc_tmf {
>  	__be32 cancel_key;
>  	__be32 my_cancel_key;
>  	__be32 pad;
> +	__be64 targetWWPN;

For consistency, can you make this target_wwpn?

> +	__be64 taskTag;

and make this task_tag. 

>  	__be64 reserved[2];
>  } __packed __aligned(8);
>  
> @@ -474,9 +483,19 @@ struct ibmvfc_cmd {
>  	__be64 correlation;
>  	__be64 tgt_scsi_id;
>  	__be64 tag;
> -	__be64 reserved3[2];
> -	struct ibmvfc_fcp_cmd_iu iu;
> -	struct ibmvfc_fcp_rsp rsp;
> +	__be64 targetWWPN;

For consistency, can you make this target_wwpn?

> +	__be64 reserved3;
> +	union {
> +		struct {
> +			struct ibmvfc_fcp_cmd_iu iu;
> +			struct ibmvfc_fcp_rsp rsp;
> +		} v1;
> +		struct {
> +			__be64 reserved4;
> +			struct ibmvfc_fcp_cmd_iu iu;
> +			struct ibmvfc_fcp_rsp rsp;
> +		} v2;
> +	};
>  } __packed __aligned(8);
>  
>  struct ibmvfc_passthru_fc_iu {
> @@ -503,6 +522,7 @@ struct ibmvfc_passthru_iu {
>  	__be64 correlation;
>  	__be64 scsi_id;
>  	__be64 tag;
> +	__be64 targetWWPN;

For consistency, can you make this target_wwpn?

>  	__be64 reserved2[2];
>  } __packed __aligned(8);
>  
> 


-- 
Brian King
Power Linux I/O
IBM Linux Technology Center



More information about the Linuxppc-dev mailing list