[SCSI] ibmvfc: prep for fc host dev loss tmo support
This removes the driver's get_host_def_dev_loss_tmo callback and just has the driver set the dev loss using the fc class fc_host_dev_loss_tmo macro like is done for other fc params. This patch also removes the module dev loss param. To override the value the fc host sysfs value being added in the fc class patch can be used instead of the driver module param. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
Родитель
485868208e
Коммит
a5110f2983
|
@ -50,7 +50,6 @@ static unsigned int max_lun = IBMVFC_MAX_LUN;
|
||||||
static unsigned int max_targets = IBMVFC_MAX_TARGETS;
|
static unsigned int max_targets = IBMVFC_MAX_TARGETS;
|
||||||
static unsigned int max_requests = IBMVFC_MAX_REQUESTS_DEFAULT;
|
static unsigned int max_requests = IBMVFC_MAX_REQUESTS_DEFAULT;
|
||||||
static unsigned int disc_threads = IBMVFC_MAX_DISC_THREADS;
|
static unsigned int disc_threads = IBMVFC_MAX_DISC_THREADS;
|
||||||
static unsigned int dev_loss_tmo = IBMVFC_DEV_LOSS_TMO;
|
|
||||||
static unsigned int ibmvfc_debug = IBMVFC_DEBUG;
|
static unsigned int ibmvfc_debug = IBMVFC_DEBUG;
|
||||||
static unsigned int log_level = IBMVFC_DEFAULT_LOG_LEVEL;
|
static unsigned int log_level = IBMVFC_DEFAULT_LOG_LEVEL;
|
||||||
static LIST_HEAD(ibmvfc_head);
|
static LIST_HEAD(ibmvfc_head);
|
||||||
|
@ -84,11 +83,6 @@ MODULE_PARM_DESC(disc_threads, "Number of device discovery threads to use. "
|
||||||
module_param_named(debug, ibmvfc_debug, uint, S_IRUGO | S_IWUSR);
|
module_param_named(debug, ibmvfc_debug, uint, S_IRUGO | S_IWUSR);
|
||||||
MODULE_PARM_DESC(debug, "Enable driver debug information. "
|
MODULE_PARM_DESC(debug, "Enable driver debug information. "
|
||||||
"[Default=" __stringify(IBMVFC_DEBUG) "]");
|
"[Default=" __stringify(IBMVFC_DEBUG) "]");
|
||||||
module_param_named(dev_loss_tmo, dev_loss_tmo, uint, S_IRUGO | S_IWUSR);
|
|
||||||
MODULE_PARM_DESC(dev_loss_tmo, "Maximum number of seconds that the FC "
|
|
||||||
"transport should insulate the loss of a remote port. Once this "
|
|
||||||
"value is exceeded, the scsi target is removed. "
|
|
||||||
"[Default=" __stringify(IBMVFC_DEV_LOSS_TMO) "]");
|
|
||||||
module_param_named(log_level, log_level, uint, 0);
|
module_param_named(log_level, log_level, uint, 0);
|
||||||
MODULE_PARM_DESC(log_level, "Set to 0 - 4 for increasing verbosity of device driver. "
|
MODULE_PARM_DESC(log_level, "Set to 0 - 4 for increasing verbosity of device driver. "
|
||||||
"[Default=" __stringify(IBMVFC_DEFAULT_LOG_LEVEL) "]");
|
"[Default=" __stringify(IBMVFC_DEFAULT_LOG_LEVEL) "]");
|
||||||
|
@ -1030,11 +1024,6 @@ static void ibmvfc_get_host_port_state(struct Scsi_Host *shost)
|
||||||
spin_unlock_irqrestore(shost->host_lock, flags);
|
spin_unlock_irqrestore(shost->host_lock, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ibmvfc_set_host_def_dev_loss_tmo(struct Scsi_Host *shost)
|
|
||||||
{
|
|
||||||
fc_host_def_dev_loss_tmo(shost) = dev_loss_tmo;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ibmvfc_set_rport_dev_loss_tmo - Set rport's device loss timeout
|
* ibmvfc_set_rport_dev_loss_tmo - Set rport's device loss timeout
|
||||||
* @rport: rport struct
|
* @rport: rport struct
|
||||||
|
@ -4772,6 +4761,8 @@ static int ibmvfc_probe(struct vio_dev *vdev, const struct vio_device_id *id)
|
||||||
if ((rc = scsi_add_host(shost, dev)))
|
if ((rc = scsi_add_host(shost, dev)))
|
||||||
goto release_event_pool;
|
goto release_event_pool;
|
||||||
|
|
||||||
|
fc_host_dev_loss_tmo(shost) = IBMVFC_DEV_LOSS_TMO;
|
||||||
|
|
||||||
if ((rc = ibmvfc_create_trace_file(&shost->shost_dev.kobj,
|
if ((rc = ibmvfc_create_trace_file(&shost->shost_dev.kobj,
|
||||||
&ibmvfc_trace_attr))) {
|
&ibmvfc_trace_attr))) {
|
||||||
dev_err(dev, "Failed to create trace file. rc=%d\n", rc);
|
dev_err(dev, "Failed to create trace file. rc=%d\n", rc);
|
||||||
|
@ -4917,8 +4908,6 @@ static struct fc_function_template ibmvfc_transport_functions = {
|
||||||
.get_host_speed = ibmvfc_get_host_speed,
|
.get_host_speed = ibmvfc_get_host_speed,
|
||||||
.show_host_speed = 1,
|
.show_host_speed = 1,
|
||||||
|
|
||||||
.get_host_def_dev_loss_tmo = ibmvfc_set_host_def_dev_loss_tmo,
|
|
||||||
|
|
||||||
.issue_fc_host_lip = ibmvfc_issue_fc_host_lip,
|
.issue_fc_host_lip = ibmvfc_issue_fc_host_lip,
|
||||||
.terminate_rport_io = ibmvfc_terminate_rport_io,
|
.terminate_rport_io = ibmvfc_terminate_rport_io,
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче