[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:
Mike Christie 2010-09-15 16:52:29 -05:00 коммит произвёл James Bottomley
Родитель 485868208e
Коммит a5110f2983
1 изменённых файлов: 2 добавлений и 13 удалений

Просмотреть файл

@ -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,