diff options
Diffstat (limited to 'include/scsi/libsas.h')
| -rw-r--r-- | include/scsi/libsas.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/include/scsi/libsas.h b/include/scsi/libsas.h index 1f989fb42c70..b09bdd8c3394 100644 --- a/include/scsi/libsas.h +++ b/include/scsi/libsas.h | |||
| @@ -354,6 +354,8 @@ struct sas_ha_struct { | |||
| 354 | void (*notify_phy_event)(struct asd_sas_phy *, enum phy_event); | 354 | void (*notify_phy_event)(struct asd_sas_phy *, enum phy_event); |
| 355 | 355 | ||
| 356 | void *lldd_ha; /* not touched by sas class code */ | 356 | void *lldd_ha; /* not touched by sas class code */ |
| 357 | |||
| 358 | struct list_head eh_done_q; | ||
| 357 | }; | 359 | }; |
| 358 | 360 | ||
| 359 | #define SHOST_TO_SAS_HA(_shost) (*(struct sas_ha_struct **)(_shost)->hostdata) | 361 | #define SHOST_TO_SAS_HA(_shost) (*(struct sas_ha_struct **)(_shost)->hostdata) |
| @@ -542,13 +544,16 @@ struct sas_task { | |||
| 542 | 544 | ||
| 543 | void *lldd_task; /* for use by LLDDs */ | 545 | void *lldd_task; /* for use by LLDDs */ |
| 544 | void *uldd_task; | 546 | void *uldd_task; |
| 547 | |||
| 548 | struct work_struct abort_work; | ||
| 545 | }; | 549 | }; |
| 546 | 550 | ||
| 547 | 551 | ||
| 548 | 552 | ||
| 549 | #define SAS_TASK_STATE_PENDING 1 | 553 | #define SAS_TASK_STATE_PENDING 1 |
| 550 | #define SAS_TASK_STATE_DONE 2 | 554 | #define SAS_TASK_STATE_DONE 2 |
| 551 | #define SAS_TASK_STATE_ABORTED 4 | 555 | #define SAS_TASK_STATE_ABORTED 4 |
| 556 | #define SAS_TASK_INITIATOR_ABORTED 8 | ||
| 552 | 557 | ||
| 553 | static inline struct sas_task *sas_alloc_task(gfp_t flags) | 558 | static inline struct sas_task *sas_alloc_task(gfp_t flags) |
| 554 | { | 559 | { |
| @@ -608,6 +613,7 @@ struct sas_domain_function_template { | |||
| 608 | extern int sas_register_ha(struct sas_ha_struct *); | 613 | extern int sas_register_ha(struct sas_ha_struct *); |
| 609 | extern int sas_unregister_ha(struct sas_ha_struct *); | 614 | extern int sas_unregister_ha(struct sas_ha_struct *); |
| 610 | 615 | ||
| 616 | int sas_phy_reset(struct sas_phy *phy, int hard_reset); | ||
| 611 | extern int sas_queuecommand(struct scsi_cmnd *, | 617 | extern int sas_queuecommand(struct scsi_cmnd *, |
| 612 | void (*scsi_done)(struct scsi_cmnd *)); | 618 | void (*scsi_done)(struct scsi_cmnd *)); |
| 613 | extern int sas_target_alloc(struct scsi_target *); | 619 | extern int sas_target_alloc(struct scsi_target *); |
| @@ -640,4 +646,6 @@ void sas_unregister_dev(struct domain_device *); | |||
| 640 | 646 | ||
| 641 | void sas_init_dev(struct domain_device *); | 647 | void sas_init_dev(struct domain_device *); |
| 642 | 648 | ||
| 649 | void sas_task_abort(struct sas_task *task); | ||
| 650 | |||
| 643 | #endif /* _SASLIB_H_ */ | 651 | #endif /* _SASLIB_H_ */ |
