diff options
author | Christof Schmitt <christof.schmitt@de.ibm.com> | 2009-11-24 16:54:13 +0100 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-12-04 12:02:15 -0600 |
commit | 7c7dc196814b9e1d5cc254dc579a5fa78ae524f7 (patch) | |
tree | efe4800a456fa97e1f10876840fbde0983264b18 /drivers/s390/scsi/zfcp_fc.h | |
parent | 800c0cad962dcf630cabf3efdc5983619e73d4c9 (diff) | |
download | talos-op-linux-7c7dc196814b9e1d5cc254dc579a5fa78ae524f7.tar.gz talos-op-linux-7c7dc196814b9e1d5cc254dc579a5fa78ae524f7.zip |
[SCSI] zfcp: Simplify handling of ct and els requests
Remove some redundancies in FC related code and trace:
- drop redundant data from SAN trace (local s_id that only changes
during link down, ls_code that is already part of payload, d_id in
ct response trace that is always the same as in ct request trace)
- use one common fsf struct to hold zfcp data for ct and els requests
- leverage common fsf struct for FC passthrough job data, allocate it
with dd_bsg_data for passthrough requests and unify common code for
ct and els passthrough request
- simplify callback handling in zfcp_fc
Reviewed-by: Swen Schillig <swen@vnet.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/s390/scsi/zfcp_fc.h')
-rw-r--r-- | drivers/s390/scsi/zfcp_fc.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/s390/scsi/zfcp_fc.h b/drivers/s390/scsi/zfcp_fc.h index 9c787e043ff8..cb2a3669a384 100644 --- a/drivers/s390/scsi/zfcp_fc.h +++ b/drivers/s390/scsi/zfcp_fc.h @@ -15,6 +15,7 @@ #include <scsi/fc/fc_ns.h> #include <scsi/scsi_cmnd.h> #include <scsi/scsi_tcq.h> +#include "zfcp_fsf.h" #define ZFCP_FC_CT_SIZE_PAGE (PAGE_SIZE - sizeof(struct fc_ct_hdr)) #define ZFCP_FC_GPN_FT_ENT_PAGE (ZFCP_FC_CT_SIZE_PAGE \ @@ -55,7 +56,7 @@ struct zfcp_fc_gid_pn_resp { * @gid_pn_resp: GID_PN response data */ struct zfcp_fc_gid_pn { - struct zfcp_send_ct ct; + struct zfcp_fsf_ct_els ct; struct scatterlist sg_req; struct scatterlist sg_resp; struct zfcp_fc_gid_pn_req gid_pn_req; @@ -90,7 +91,7 @@ struct zfcp_fc_gpn_ft_resp { * @sg_resp: scatter list entries for gpn_ft responses (per memory page) */ struct zfcp_fc_gpn_ft { - struct zfcp_send_ct ct; + struct zfcp_fsf_ct_els ct; struct scatterlist sg_req; struct scatterlist sg_resp[ZFCP_FC_GPN_FT_NUM_BUFS]; }; @@ -104,7 +105,7 @@ struct zfcp_fc_gpn_ft { * @adisc_resp: ELS ADISC response data */ struct zfcp_fc_els_adisc { - struct zfcp_send_els els; + struct zfcp_fsf_ct_els els; struct scatterlist req; struct scatterlist resp; struct fc_els_adisc adisc_req; |