[SCSI] zfcp: Apply common naming conventions to zfcp_fc
Update the Fibre Channel related code to use the zfcp_fc prefix. Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
parent
d5a282a1c5
commit
6f53a2d2ec
5 changed files with 35 additions and 36 deletions
|
@ -544,7 +544,7 @@ int zfcp_adapter_enqueue(struct ccw_device *ccw_device)
|
||||||
sema_init(&adapter->erp_ready_sem, 0);
|
sema_init(&adapter->erp_ready_sem, 0);
|
||||||
|
|
||||||
INIT_WORK(&adapter->stat_work, _zfcp_status_read_scheduler);
|
INIT_WORK(&adapter->stat_work, _zfcp_status_read_scheduler);
|
||||||
INIT_WORK(&adapter->scan_work, _zfcp_scan_ports_later);
|
INIT_WORK(&adapter->scan_work, _zfcp_fc_scan_ports_later);
|
||||||
|
|
||||||
adapter->service_level.seq_print = zfcp_print_sl;
|
adapter->service_level.seq_print = zfcp_print_sl;
|
||||||
|
|
||||||
|
|
|
@ -92,12 +92,12 @@ extern void zfcp_erp_adapter_access_changed(struct zfcp_adapter *, char *,
|
||||||
extern void zfcp_erp_timeout_handler(unsigned long);
|
extern void zfcp_erp_timeout_handler(unsigned long);
|
||||||
|
|
||||||
/* zfcp_fc.c */
|
/* zfcp_fc.c */
|
||||||
extern int zfcp_scan_ports(struct zfcp_adapter *);
|
extern int zfcp_fc_scan_ports(struct zfcp_adapter *);
|
||||||
extern void _zfcp_scan_ports_later(struct work_struct *);
|
extern void _zfcp_fc_scan_ports_later(struct work_struct *);
|
||||||
extern void zfcp_fc_incoming_els(struct zfcp_fsf_req *);
|
extern void zfcp_fc_incoming_els(struct zfcp_fsf_req *);
|
||||||
extern void zfcp_fc_port_did_lookup(struct work_struct *);
|
extern void zfcp_fc_port_did_lookup(struct work_struct *);
|
||||||
extern void zfcp_fc_plogi_evaluate(struct zfcp_port *, struct fsf_plogi *);
|
extern void zfcp_fc_plogi_evaluate(struct zfcp_port *, struct fsf_plogi *);
|
||||||
extern void zfcp_test_link(struct zfcp_port *);
|
extern void zfcp_fc_test_link(struct zfcp_port *);
|
||||||
extern void zfcp_fc_link_test_work(struct work_struct *);
|
extern void zfcp_fc_link_test_work(struct work_struct *);
|
||||||
extern void zfcp_fc_wka_ports_force_offline(struct zfcp_wka_ports *);
|
extern void zfcp_fc_wka_ports_force_offline(struct zfcp_wka_ports *);
|
||||||
extern int zfcp_fc_gs_setup(struct zfcp_adapter *);
|
extern int zfcp_fc_gs_setup(struct zfcp_adapter *);
|
||||||
|
|
|
@ -57,7 +57,7 @@ struct zfcp_fc_ns_handler_data {
|
||||||
unsigned long handler_data;
|
unsigned long handler_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
static int zfcp_wka_port_get(struct zfcp_wka_port *wka_port)
|
static int zfcp_fc_wka_port_get(struct zfcp_wka_port *wka_port)
|
||||||
{
|
{
|
||||||
if (mutex_lock_interruptible(&wka_port->mutex))
|
if (mutex_lock_interruptible(&wka_port->mutex))
|
||||||
return -ERESTARTSYS;
|
return -ERESTARTSYS;
|
||||||
|
@ -82,7 +82,7 @@ static int zfcp_wka_port_get(struct zfcp_wka_port *wka_port)
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void zfcp_wka_port_offline(struct work_struct *work)
|
static void zfcp_fc_wka_port_offline(struct work_struct *work)
|
||||||
{
|
{
|
||||||
struct delayed_work *dw = to_delayed_work(work);
|
struct delayed_work *dw = to_delayed_work(work);
|
||||||
struct zfcp_wka_port *wka_port =
|
struct zfcp_wka_port *wka_port =
|
||||||
|
@ -102,7 +102,7 @@ out:
|
||||||
mutex_unlock(&wka_port->mutex);
|
mutex_unlock(&wka_port->mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void zfcp_wka_port_put(struct zfcp_wka_port *wka_port)
|
static void zfcp_fc_wka_port_put(struct zfcp_wka_port *wka_port)
|
||||||
{
|
{
|
||||||
if (atomic_dec_return(&wka_port->refcount) != 0)
|
if (atomic_dec_return(&wka_port->refcount) != 0)
|
||||||
return;
|
return;
|
||||||
|
@ -121,7 +121,7 @@ static void zfcp_fc_wka_port_init(struct zfcp_wka_port *wka_port, u32 d_id,
|
||||||
wka_port->status = ZFCP_WKA_PORT_OFFLINE;
|
wka_port->status = ZFCP_WKA_PORT_OFFLINE;
|
||||||
atomic_set(&wka_port->refcount, 0);
|
atomic_set(&wka_port->refcount, 0);
|
||||||
mutex_init(&wka_port->mutex);
|
mutex_init(&wka_port->mutex);
|
||||||
INIT_DELAYED_WORK(&wka_port->work, zfcp_wka_port_offline);
|
INIT_DELAYED_WORK(&wka_port->work, zfcp_fc_wka_port_offline);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void zfcp_fc_wka_port_force_offline(struct zfcp_wka_port *wka)
|
static void zfcp_fc_wka_port_force_offline(struct zfcp_wka_port *wka)
|
||||||
|
@ -150,7 +150,7 @@ static void _zfcp_fc_incoming_rscn(struct zfcp_fsf_req *fsf_req, u32 range,
|
||||||
read_lock_irqsave(&zfcp_data.config_lock, flags);
|
read_lock_irqsave(&zfcp_data.config_lock, flags);
|
||||||
list_for_each_entry(port, &fsf_req->adapter->port_list_head, list) {
|
list_for_each_entry(port, &fsf_req->adapter->port_list_head, list) {
|
||||||
if ((port->d_id & range) == (elem->nport_did & range))
|
if ((port->d_id & range) == (elem->nport_did & range))
|
||||||
zfcp_test_link(port);
|
zfcp_fc_test_link(port);
|
||||||
if (!port->d_id)
|
if (!port->d_id)
|
||||||
zfcp_erp_port_reopen(port,
|
zfcp_erp_port_reopen(port,
|
||||||
ZFCP_STATUS_COMMON_ERP_FAILED,
|
ZFCP_STATUS_COMMON_ERP_FAILED,
|
||||||
|
@ -326,13 +326,13 @@ static int zfcp_fc_ns_gid_pn(struct zfcp_port *port)
|
||||||
|
|
||||||
memset(gid_pn, 0, sizeof(*gid_pn));
|
memset(gid_pn, 0, sizeof(*gid_pn));
|
||||||
|
|
||||||
ret = zfcp_wka_port_get(&adapter->gs->ds);
|
ret = zfcp_fc_wka_port_get(&adapter->gs->ds);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
ret = zfcp_fc_ns_gid_pn_request(port, gid_pn);
|
ret = zfcp_fc_ns_gid_pn_request(port, gid_pn);
|
||||||
|
|
||||||
zfcp_wka_port_put(&adapter->gs->ds);
|
zfcp_fc_wka_port_put(&adapter->gs->ds);
|
||||||
out:
|
out:
|
||||||
mempool_free(gid_pn, adapter->pool.gid_pn_data);
|
mempool_free(gid_pn, adapter->pool.gid_pn_data);
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -482,14 +482,14 @@ out:
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* zfcp_test_link - lightweight link test procedure
|
* zfcp_fc_test_link - lightweight link test procedure
|
||||||
* @port: port to be tested
|
* @port: port to be tested
|
||||||
*
|
*
|
||||||
* Test status of a link to a remote port using the ELS command ADISC.
|
* Test status of a link to a remote port using the ELS command ADISC.
|
||||||
* If there is a problem with the remote port, error recovery steps
|
* If there is a problem with the remote port, error recovery steps
|
||||||
* will be triggered.
|
* will be triggered.
|
||||||
*/
|
*/
|
||||||
void zfcp_test_link(struct zfcp_port *port)
|
void zfcp_fc_test_link(struct zfcp_port *port)
|
||||||
{
|
{
|
||||||
zfcp_port_get(port);
|
zfcp_port_get(port);
|
||||||
if (!queue_work(port->adapter->work_queue, &port->test_link_work))
|
if (!queue_work(port->adapter->work_queue, &port->test_link_work))
|
||||||
|
@ -532,9 +532,8 @@ out:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int zfcp_scan_issue_gpn_ft(struct zfcp_gpn_ft *gpn_ft,
|
static int zfcp_fc_send_gpn_ft(struct zfcp_gpn_ft *gpn_ft,
|
||||||
struct zfcp_adapter *adapter,
|
struct zfcp_adapter *adapter, int max_bytes)
|
||||||
int max_bytes)
|
|
||||||
{
|
{
|
||||||
struct zfcp_send_ct *ct = &gpn_ft->ct;
|
struct zfcp_send_ct *ct = &gpn_ft->ct;
|
||||||
struct ct_iu_gpn_ft_req *req = sg_virt(&gpn_ft->sg_req);
|
struct ct_iu_gpn_ft_req *req = sg_virt(&gpn_ft->sg_req);
|
||||||
|
@ -569,7 +568,7 @@ static int zfcp_scan_issue_gpn_ft(struct zfcp_gpn_ft *gpn_ft,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void zfcp_validate_port(struct zfcp_port *port)
|
static void zfcp_fc_validate_port(struct zfcp_port *port)
|
||||||
{
|
{
|
||||||
struct zfcp_adapter *adapter = port->adapter;
|
struct zfcp_adapter *adapter = port->adapter;
|
||||||
|
|
||||||
|
@ -589,7 +588,7 @@ static void zfcp_validate_port(struct zfcp_port *port)
|
||||||
zfcp_port_dequeue(port);
|
zfcp_port_dequeue(port);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int zfcp_scan_eval_gpn_ft(struct zfcp_gpn_ft *gpn_ft, int max_entries)
|
static int zfcp_fc_eval_gpn_ft(struct zfcp_gpn_ft *gpn_ft, int max_entries)
|
||||||
{
|
{
|
||||||
struct zfcp_send_ct *ct = &gpn_ft->ct;
|
struct zfcp_send_ct *ct = &gpn_ft->ct;
|
||||||
struct scatterlist *sg = gpn_ft->sg_resp;
|
struct scatterlist *sg = gpn_ft->sg_resp;
|
||||||
|
@ -649,16 +648,16 @@ static int zfcp_scan_eval_gpn_ft(struct zfcp_gpn_ft *gpn_ft, int max_entries)
|
||||||
|
|
||||||
zfcp_erp_wait(adapter);
|
zfcp_erp_wait(adapter);
|
||||||
list_for_each_entry_safe(port, tmp, &adapter->port_list_head, list)
|
list_for_each_entry_safe(port, tmp, &adapter->port_list_head, list)
|
||||||
zfcp_validate_port(port);
|
zfcp_fc_validate_port(port);
|
||||||
up(&zfcp_data.config_sema);
|
up(&zfcp_data.config_sema);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* zfcp_scan_ports - scan remote ports and attach new ports
|
* zfcp_fc_scan_ports - scan remote ports and attach new ports
|
||||||
* @adapter: pointer to struct zfcp_adapter
|
* @adapter: pointer to struct zfcp_adapter
|
||||||
*/
|
*/
|
||||||
int zfcp_scan_ports(struct zfcp_adapter *adapter)
|
int zfcp_fc_scan_ports(struct zfcp_adapter *adapter)
|
||||||
{
|
{
|
||||||
int ret, i;
|
int ret, i;
|
||||||
struct zfcp_gpn_ft *gpn_ft;
|
struct zfcp_gpn_ft *gpn_ft;
|
||||||
|
@ -673,7 +672,7 @@ int zfcp_scan_ports(struct zfcp_adapter *adapter)
|
||||||
fc_host_port_type(adapter->scsi_host) != FC_PORTTYPE_NPIV)
|
fc_host_port_type(adapter->scsi_host) != FC_PORTTYPE_NPIV)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ret = zfcp_wka_port_get(&adapter->gs->ds);
|
ret = zfcp_fc_wka_port_get(&adapter->gs->ds);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
@ -684,9 +683,9 @@ int zfcp_scan_ports(struct zfcp_adapter *adapter)
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < 3; i++) {
|
for (i = 0; i < 3; i++) {
|
||||||
ret = zfcp_scan_issue_gpn_ft(gpn_ft, adapter, max_bytes);
|
ret = zfcp_fc_send_gpn_ft(gpn_ft, adapter, max_bytes);
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
ret = zfcp_scan_eval_gpn_ft(gpn_ft, max_entries);
|
ret = zfcp_fc_eval_gpn_ft(gpn_ft, max_entries);
|
||||||
if (ret == -EAGAIN)
|
if (ret == -EAGAIN)
|
||||||
ssleep(1);
|
ssleep(1);
|
||||||
else
|
else
|
||||||
|
@ -695,14 +694,14 @@ int zfcp_scan_ports(struct zfcp_adapter *adapter)
|
||||||
}
|
}
|
||||||
zfcp_free_sg_env(gpn_ft, buf_num);
|
zfcp_free_sg_env(gpn_ft, buf_num);
|
||||||
out:
|
out:
|
||||||
zfcp_wka_port_put(&adapter->gs->ds);
|
zfcp_fc_wka_port_put(&adapter->gs->ds);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void _zfcp_scan_ports_later(struct work_struct *work)
|
void _zfcp_fc_scan_ports_later(struct work_struct *work)
|
||||||
{
|
{
|
||||||
zfcp_scan_ports(container_of(work, struct zfcp_adapter, scan_work));
|
zfcp_fc_scan_ports(container_of(work, struct zfcp_adapter, scan_work));
|
||||||
}
|
}
|
||||||
|
|
||||||
struct zfcp_els_fc_job {
|
struct zfcp_els_fc_job {
|
||||||
|
@ -792,7 +791,7 @@ static void zfcp_fc_generic_ct_handler(unsigned long data)
|
||||||
job->state_flags = FC_RQST_STATE_DONE;
|
job->state_flags = FC_RQST_STATE_DONE;
|
||||||
job->job_done(job);
|
job->job_done(job);
|
||||||
|
|
||||||
zfcp_wka_port_put(ct_fc_job->ct.wka_port);
|
zfcp_fc_wka_port_put(ct_fc_job->ct.wka_port);
|
||||||
|
|
||||||
kfree(ct_fc_job);
|
kfree(ct_fc_job);
|
||||||
}
|
}
|
||||||
|
@ -838,7 +837,7 @@ int zfcp_fc_execute_ct_fc_job(struct fc_bsg_job *job)
|
||||||
return -EINVAL; /* no such service */
|
return -EINVAL; /* no such service */
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = zfcp_wka_port_get(ct_fc_job->ct.wka_port);
|
ret = zfcp_fc_wka_port_get(ct_fc_job->ct.wka_port);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
kfree(ct_fc_job);
|
kfree(ct_fc_job);
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -855,7 +854,7 @@ int zfcp_fc_execute_ct_fc_job(struct fc_bsg_job *job)
|
||||||
ret = zfcp_fsf_send_ct(&ct_fc_job->ct, NULL);
|
ret = zfcp_fsf_send_ct(&ct_fc_job->ct, NULL);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
kfree(ct_fc_job);
|
kfree(ct_fc_job);
|
||||||
zfcp_wka_port_put(ct_fc_job->ct.wka_port);
|
zfcp_fc_wka_port_put(ct_fc_job->ct.wka_port);
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -892,7 +892,7 @@ static void zfcp_fsf_abort_fcp_command_handler(struct zfcp_fsf_req *req)
|
||||||
case FSF_ADAPTER_STATUS_AVAILABLE:
|
case FSF_ADAPTER_STATUS_AVAILABLE:
|
||||||
switch (fsq->word[0]) {
|
switch (fsq->word[0]) {
|
||||||
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
||||||
zfcp_test_link(unit->port);
|
zfcp_fc_test_link(unit->port);
|
||||||
/* fall through */
|
/* fall through */
|
||||||
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
||||||
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
||||||
|
@ -1139,7 +1139,7 @@ static void zfcp_fsf_send_els_handler(struct zfcp_fsf_req *req)
|
||||||
switch (header->fsf_status_qual.word[0]){
|
switch (header->fsf_status_qual.word[0]){
|
||||||
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
||||||
if (port && (send_els->ls_code != ZFCP_LS_ADISC))
|
if (port && (send_els->ls_code != ZFCP_LS_ADISC))
|
||||||
zfcp_test_link(port);
|
zfcp_fc_test_link(port);
|
||||||
/*fall through */
|
/*fall through */
|
||||||
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
||||||
case FSF_SQ_RETRY_IF_POSSIBLE:
|
case FSF_SQ_RETRY_IF_POSSIBLE:
|
||||||
|
@ -1889,7 +1889,7 @@ static void zfcp_fsf_open_unit_handler(struct zfcp_fsf_req *req)
|
||||||
case FSF_ADAPTER_STATUS_AVAILABLE:
|
case FSF_ADAPTER_STATUS_AVAILABLE:
|
||||||
switch (header->fsf_status_qual.word[0]) {
|
switch (header->fsf_status_qual.word[0]) {
|
||||||
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
||||||
zfcp_test_link(unit->port);
|
zfcp_fc_test_link(unit->port);
|
||||||
/* fall through */
|
/* fall through */
|
||||||
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
||||||
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
||||||
|
@ -2024,7 +2024,7 @@ static void zfcp_fsf_close_unit_handler(struct zfcp_fsf_req *req)
|
||||||
case FSF_ADAPTER_STATUS_AVAILABLE:
|
case FSF_ADAPTER_STATUS_AVAILABLE:
|
||||||
switch (req->qtcb->header.fsf_status_qual.word[0]) {
|
switch (req->qtcb->header.fsf_status_qual.word[0]) {
|
||||||
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
case FSF_SQ_INVOKE_LINK_TEST_PROCEDURE:
|
||||||
zfcp_test_link(unit->port);
|
zfcp_fc_test_link(unit->port);
|
||||||
/* fall through */
|
/* fall through */
|
||||||
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
case FSF_SQ_ULP_DEPENDENT_ERP_REQUIRED:
|
||||||
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
||||||
|
@ -2307,7 +2307,7 @@ static void zfcp_fsf_send_fcp_command_handler(struct zfcp_fsf_req *req)
|
||||||
case FSF_ADAPTER_STATUS_AVAILABLE:
|
case FSF_ADAPTER_STATUS_AVAILABLE:
|
||||||
if (header->fsf_status_qual.word[0] ==
|
if (header->fsf_status_qual.word[0] ==
|
||||||
FSF_SQ_INVOKE_LINK_TEST_PROCEDURE)
|
FSF_SQ_INVOKE_LINK_TEST_PROCEDURE)
|
||||||
zfcp_test_link(unit->port);
|
zfcp_fc_test_link(unit->port);
|
||||||
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
req->status |= ZFCP_STATUS_FSFREQ_ERROR;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -126,7 +126,7 @@ static ssize_t zfcp_sysfs_port_rescan_store(struct device *dev,
|
||||||
if (atomic_read(&adapter->status) & ZFCP_STATUS_COMMON_REMOVE)
|
if (atomic_read(&adapter->status) & ZFCP_STATUS_COMMON_REMOVE)
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
|
|
||||||
ret = zfcp_scan_ports(adapter);
|
ret = zfcp_fc_scan_ports(adapter);
|
||||||
return ret ? ret : (ssize_t) count;
|
return ret ? ret : (ssize_t) count;
|
||||||
}
|
}
|
||||||
static ZFCP_DEV_ATTR(adapter, port_rescan, S_IWUSR, NULL,
|
static ZFCP_DEV_ATTR(adapter, port_rescan, S_IWUSR, NULL,
|
||||||
|
|
Loading…
Add table
Reference in a new issue