diff options
author | Martin Peschke <mp3@de.ibm.com> | 2008-03-27 14:22:03 +0100 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-04-07 12:19:04 -0500 |
commit | 9467a9b3efdd9041202f71cc270bda827a7ec777 (patch) | |
tree | 9e7b8e167da9aa5065b1f7ed1d2a1ab9c2ad47da /drivers/s390/scsi/zfcp_ext.h | |
parent | 698ec01635819c5ae60090bb4efcbeffc41642fb (diff) | |
download | kernel_samsung_crespo-9467a9b3efdd9041202f71cc270bda827a7ec777.zip kernel_samsung_crespo-9467a9b3efdd9041202f71cc270bda827a7ec777.tar.gz kernel_samsung_crespo-9467a9b3efdd9041202f71cc270bda827a7ec777.tar.bz2 |
[SCSI] zfcp: Trace all triggers of error recovery activity
This patch allows any recovery event to be traced back to an exact
cause, e.g. a particular request identified by an id (address).
Signed-off-by: Martin Peschke <mp3@de.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/s390/scsi/zfcp_ext.h')
-rw-r--r-- | drivers/s390/scsi/zfcp_ext.h | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/drivers/s390/scsi/zfcp_ext.h b/drivers/s390/scsi/zfcp_ext.h index 20ad6fd..e10ed14 100644 --- a/drivers/s390/scsi/zfcp_ext.h +++ b/drivers/s390/scsi/zfcp_ext.h @@ -133,20 +133,20 @@ extern struct fc_function_template zfcp_transport_functions; /******************************** ERP ****************************************/ extern void zfcp_erp_modify_adapter_status(struct zfcp_adapter *, u8, u64, u32, int); -extern int zfcp_erp_adapter_reopen(struct zfcp_adapter *, int); -extern int zfcp_erp_adapter_shutdown(struct zfcp_adapter *, int); +extern int zfcp_erp_adapter_reopen(struct zfcp_adapter *, int, u8, u64); +extern int zfcp_erp_adapter_shutdown(struct zfcp_adapter *, int, u8, u64); extern void zfcp_erp_adapter_failed(struct zfcp_adapter *, u8, u64); extern void zfcp_erp_modify_port_status(struct zfcp_port *, u8, u64, u32, int); -extern int zfcp_erp_port_reopen(struct zfcp_port *, int); -extern int zfcp_erp_port_shutdown(struct zfcp_port *, int); -extern int zfcp_erp_port_forced_reopen(struct zfcp_port *, int); +extern int zfcp_erp_port_reopen(struct zfcp_port *, int, u8, u64); +extern int zfcp_erp_port_shutdown(struct zfcp_port *, int, u8, u64); +extern int zfcp_erp_port_forced_reopen(struct zfcp_port *, int, u8, u64); extern void zfcp_erp_port_failed(struct zfcp_port *, u8, u64); -extern int zfcp_erp_port_reopen_all(struct zfcp_adapter *, int); +extern int zfcp_erp_port_reopen_all(struct zfcp_adapter *, int, u8, u64); extern void zfcp_erp_modify_unit_status(struct zfcp_unit *, u8, u64, u32, int); -extern int zfcp_erp_unit_reopen(struct zfcp_unit *, int); -extern int zfcp_erp_unit_shutdown(struct zfcp_unit *, int); +extern int zfcp_erp_unit_reopen(struct zfcp_unit *, int, u8, u64); +extern int zfcp_erp_unit_shutdown(struct zfcp_unit *, int, u8, u64); extern void zfcp_erp_unit_failed(struct zfcp_unit *, u8, u64); extern int zfcp_erp_thread_setup(struct zfcp_adapter *); @@ -160,9 +160,9 @@ extern void zfcp_erp_port_boxed(struct zfcp_port *, u8 id, u64 ref); extern void zfcp_erp_unit_boxed(struct zfcp_unit *, u8 id, u64 ref); extern void zfcp_erp_port_access_denied(struct zfcp_port *, u8 id, u64 ref); extern void zfcp_erp_unit_access_denied(struct zfcp_unit *, u8 id, u64 ref); -extern void zfcp_erp_adapter_access_changed(struct zfcp_adapter *); -extern void zfcp_erp_port_access_changed(struct zfcp_port *); -extern void zfcp_erp_unit_access_changed(struct zfcp_unit *); +extern void zfcp_erp_adapter_access_changed(struct zfcp_adapter *, u8, u64); +extern void zfcp_erp_port_access_changed(struct zfcp_port *, u8, u64); +extern void zfcp_erp_unit_access_changed(struct zfcp_unit *, u8, u64); /******************************** AUX ****************************************/ extern void zfcp_rec_dbf_event_thread(u8 id, struct zfcp_adapter *adapter, @@ -170,6 +170,9 @@ extern void zfcp_rec_dbf_event_thread(u8 id, struct zfcp_adapter *adapter, extern void zfcp_rec_dbf_event_adapter(u8 id, u64 ref, struct zfcp_adapter *); extern void zfcp_rec_dbf_event_port(u8 id, u64 ref, struct zfcp_port *port); extern void zfcp_rec_dbf_event_unit(u8 id, u64 ref, struct zfcp_unit *unit); +extern void zfcp_rec_dbf_event_trigger(u8 id, u64 ref, u8 want, u8 need, + u64 action, struct zfcp_adapter *, + struct zfcp_port *, struct zfcp_unit *); extern void zfcp_hba_dbf_event_fsf_response(struct zfcp_fsf_req *); extern void zfcp_hba_dbf_event_fsf_unsol(const char *, struct zfcp_adapter *, |