From 7c7dc196814b9e1d5cc254dc579a5fa78ae524f7 Mon Sep 17 00:00:00 2001 From: Christof Schmitt Date: Tue, 24 Nov 2009 16:54:13 +0100 Subject: [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 Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley --- drivers/s390/scsi/zfcp_fc.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'drivers/s390/scsi/zfcp_fc.h') diff --git a/drivers/s390/scsi/zfcp_fc.h b/drivers/s390/scsi/zfcp_fc.h index 9c787e043ff..cb2a3669a38 100644 --- a/drivers/s390/scsi/zfcp_fc.h +++ b/drivers/s390/scsi/zfcp_fc.h @@ -15,6 +15,7 @@ #include #include #include +#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; -- cgit v1.2.3