mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-30 15:44:13 +08:00
[SCSI] scsi_error.c: Export some scsi_eh_* functions
Export a couple of functions from scsi_error that are needed to handle failed SCSI commands from the SAS EH. Signed-off-by: Darrick J. Wong <djwong@us.ibm.com> make exports GPL and Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
2143496646
commit
dca84e4694
@ -672,8 +672,8 @@ EXPORT_SYMBOL(scsi_eh_finish_cmd);
|
||||
* XXX: Long term this code should go away, but that needs an audit of
|
||||
* all LLDDs first.
|
||||
**/
|
||||
static int scsi_eh_get_sense(struct list_head *work_q,
|
||||
struct list_head *done_q)
|
||||
int scsi_eh_get_sense(struct list_head *work_q,
|
||||
struct list_head *done_q)
|
||||
{
|
||||
struct scsi_cmnd *scmd, *next;
|
||||
int rtn;
|
||||
@ -715,6 +715,7 @@ static int scsi_eh_get_sense(struct list_head *work_q,
|
||||
|
||||
return list_empty(work_q);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(scsi_eh_get_sense);
|
||||
|
||||
/**
|
||||
* scsi_try_to_abort_cmd - Ask host to abort a running command.
|
||||
@ -1411,9 +1412,9 @@ static void scsi_restart_operations(struct Scsi_Host *shost)
|
||||
* @eh_done_q: list_head for processed commands.
|
||||
*
|
||||
**/
|
||||
static void scsi_eh_ready_devs(struct Scsi_Host *shost,
|
||||
struct list_head *work_q,
|
||||
struct list_head *done_q)
|
||||
void scsi_eh_ready_devs(struct Scsi_Host *shost,
|
||||
struct list_head *work_q,
|
||||
struct list_head *done_q)
|
||||
{
|
||||
if (!scsi_eh_stu(shost, work_q, done_q))
|
||||
if (!scsi_eh_bus_device_reset(shost, work_q, done_q))
|
||||
@ -1421,6 +1422,7 @@ static void scsi_eh_ready_devs(struct Scsi_Host *shost,
|
||||
if (!scsi_eh_host_reset(work_q, done_q))
|
||||
scsi_eh_offline_sdevs(work_q, done_q);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(scsi_eh_ready_devs);
|
||||
|
||||
/**
|
||||
* scsi_eh_flush_done_q - finish processed commands or retry them.
|
||||
|
@ -57,6 +57,11 @@ extern int scsi_error_handler(void *host);
|
||||
extern int scsi_decide_disposition(struct scsi_cmnd *cmd);
|
||||
extern void scsi_eh_wakeup(struct Scsi_Host *shost);
|
||||
extern int scsi_eh_scmd_add(struct scsi_cmnd *, int);
|
||||
void scsi_eh_ready_devs(struct Scsi_Host *shost,
|
||||
struct list_head *work_q,
|
||||
struct list_head *done_q);
|
||||
int scsi_eh_get_sense(struct list_head *work_q,
|
||||
struct list_head *done_q);
|
||||
|
||||
/* scsi_lib.c */
|
||||
extern int scsi_maybe_unblock_host(struct scsi_device *sdev);
|
||||
|
Loading…
Reference in New Issue
Block a user