|
@@ -55,7 +55,7 @@ enum zfcp_erp_act_result {
|
|
|
|
|
|
static void zfcp_erp_adapter_block(struct zfcp_adapter *adapter, int mask)
|
|
|
{
|
|
|
- zfcp_erp_modify_adapter_status(adapter, 15, NULL,
|
|
|
+ zfcp_erp_modify_adapter_status(adapter, "erablk1", NULL,
|
|
|
ZFCP_STATUS_COMMON_UNBLOCKED | mask,
|
|
|
ZFCP_CLEAR);
|
|
|
}
|
|
@@ -75,9 +75,9 @@ static void zfcp_erp_action_ready(struct zfcp_erp_action *act)
|
|
|
struct zfcp_adapter *adapter = act->adapter;
|
|
|
|
|
|
list_move(&act->list, &act->adapter->erp_ready_head);
|
|
|
- zfcp_rec_dbf_event_action(146, act);
|
|
|
+ zfcp_rec_dbf_event_action("erardy1", act);
|
|
|
up(&adapter->erp_ready_sem);
|
|
|
- zfcp_rec_dbf_event_thread(2, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread("erardy2", adapter);
|
|
|
}
|
|
|
|
|
|
static void zfcp_erp_action_dismiss(struct zfcp_erp_action *act)
|
|
@@ -208,7 +208,7 @@ static struct zfcp_erp_action *zfcp_erp_setup_act(int need,
|
|
|
|
|
|
static int zfcp_erp_action_enqueue(int want, struct zfcp_adapter *adapter,
|
|
|
struct zfcp_port *port,
|
|
|
- struct zfcp_unit *unit, u8 id, void *ref)
|
|
|
+ struct zfcp_unit *unit, char *id, void *ref)
|
|
|
{
|
|
|
int retval = 1, need;
|
|
|
struct zfcp_erp_action *act = NULL;
|
|
@@ -228,7 +228,7 @@ static int zfcp_erp_action_enqueue(int want, struct zfcp_adapter *adapter,
|
|
|
++adapter->erp_total_count;
|
|
|
list_add_tail(&act->list, &adapter->erp_ready_head);
|
|
|
up(&adapter->erp_ready_sem);
|
|
|
- zfcp_rec_dbf_event_thread(1, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread("eracte1", adapter);
|
|
|
retval = 0;
|
|
|
out:
|
|
|
zfcp_rec_dbf_event_trigger(id, ref, want, need, act,
|
|
@@ -237,13 +237,13 @@ static int zfcp_erp_action_enqueue(int want, struct zfcp_adapter *adapter,
|
|
|
}
|
|
|
|
|
|
static int _zfcp_erp_adapter_reopen(struct zfcp_adapter *adapter,
|
|
|
- int clear_mask, u8 id, void *ref)
|
|
|
+ int clear_mask, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_adapter_block(adapter, clear_mask);
|
|
|
|
|
|
/* ensure propagation of failed status to new devices */
|
|
|
if (atomic_read(&adapter->status) & ZFCP_STATUS_COMMON_ERP_FAILED) {
|
|
|
- zfcp_erp_adapter_failed(adapter, 13, NULL);
|
|
|
+ zfcp_erp_adapter_failed(adapter, "erareo1", NULL);
|
|
|
return -EIO;
|
|
|
}
|
|
|
return zfcp_erp_action_enqueue(ZFCP_ERP_ACTION_REOPEN_ADAPTER,
|
|
@@ -258,7 +258,7 @@ static int _zfcp_erp_adapter_reopen(struct zfcp_adapter *adapter,
|
|
|
* @ref: Reference for debug trace event.
|
|
|
*/
|
|
|
void zfcp_erp_adapter_reopen(struct zfcp_adapter *adapter, int clear,
|
|
|
- u8 id, void *ref)
|
|
|
+ char *id, void *ref)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
|
|
@@ -277,7 +277,7 @@ void zfcp_erp_adapter_reopen(struct zfcp_adapter *adapter, int clear,
|
|
|
* @ref: Reference for debug trace event.
|
|
|
*/
|
|
|
void zfcp_erp_adapter_shutdown(struct zfcp_adapter *adapter, int clear,
|
|
|
- u8 id, void *ref)
|
|
|
+ char *id, void *ref)
|
|
|
{
|
|
|
int flags = ZFCP_STATUS_COMMON_RUNNING | ZFCP_STATUS_COMMON_ERP_FAILED;
|
|
|
zfcp_erp_adapter_reopen(adapter, clear | flags, id, ref);
|
|
@@ -290,7 +290,8 @@ void zfcp_erp_adapter_shutdown(struct zfcp_adapter *adapter, int clear,
|
|
|
* @id: Id for debug trace event.
|
|
|
* @ref: Reference for debug trace event.
|
|
|
*/
|
|
|
-void zfcp_erp_port_shutdown(struct zfcp_port *port, int clear, u8 id, void *ref)
|
|
|
+void zfcp_erp_port_shutdown(struct zfcp_port *port, int clear, char *id,
|
|
|
+ void *ref)
|
|
|
{
|
|
|
int flags = ZFCP_STATUS_COMMON_RUNNING | ZFCP_STATUS_COMMON_ERP_FAILED;
|
|
|
zfcp_erp_port_reopen(port, clear | flags, id, ref);
|
|
@@ -303,7 +304,8 @@ void zfcp_erp_port_shutdown(struct zfcp_port *port, int clear, u8 id, void *ref)
|
|
|
* @id: Id for debug trace event.
|
|
|
* @ref: Reference for debug trace event.
|
|
|
*/
|
|
|
-void zfcp_erp_unit_shutdown(struct zfcp_unit *unit, int clear, u8 id, void *ref)
|
|
|
+void zfcp_erp_unit_shutdown(struct zfcp_unit *unit, int clear, char *id,
|
|
|
+ void *ref)
|
|
|
{
|
|
|
int flags = ZFCP_STATUS_COMMON_RUNNING | ZFCP_STATUS_COMMON_ERP_FAILED;
|
|
|
zfcp_erp_unit_reopen(unit, clear | flags, id, ref);
|
|
@@ -311,13 +313,13 @@ void zfcp_erp_unit_shutdown(struct zfcp_unit *unit, int clear, u8 id, void *ref)
|
|
|
|
|
|
static void zfcp_erp_port_block(struct zfcp_port *port, int clear)
|
|
|
{
|
|
|
- zfcp_erp_modify_port_status(port, 17, NULL,
|
|
|
+ zfcp_erp_modify_port_status(port, "erpblk1", NULL,
|
|
|
ZFCP_STATUS_COMMON_UNBLOCKED | clear,
|
|
|
ZFCP_CLEAR);
|
|
|
}
|
|
|
|
|
|
static void _zfcp_erp_port_forced_reopen(struct zfcp_port *port,
|
|
|
- int clear, u8 id, void *ref)
|
|
|
+ int clear, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_port_block(port, clear);
|
|
|
|
|
@@ -334,7 +336,7 @@ static void _zfcp_erp_port_forced_reopen(struct zfcp_port *port,
|
|
|
* @id: Id for debug trace event.
|
|
|
* @ref: Reference for debug trace event.
|
|
|
*/
|
|
|
-void zfcp_erp_port_forced_reopen(struct zfcp_port *port, int clear, u8 id,
|
|
|
+void zfcp_erp_port_forced_reopen(struct zfcp_port *port, int clear, char *id,
|
|
|
void *ref)
|
|
|
{
|
|
|
unsigned long flags;
|
|
@@ -347,14 +349,14 @@ void zfcp_erp_port_forced_reopen(struct zfcp_port *port, int clear, u8 id,
|
|
|
read_unlock_irqrestore(&zfcp_data.config_lock, flags);
|
|
|
}
|
|
|
|
|
|
-static int _zfcp_erp_port_reopen(struct zfcp_port *port, int clear, u8 id,
|
|
|
+static int _zfcp_erp_port_reopen(struct zfcp_port *port, int clear, char *id,
|
|
|
void *ref)
|
|
|
{
|
|
|
zfcp_erp_port_block(port, clear);
|
|
|
|
|
|
if (atomic_read(&port->status) & ZFCP_STATUS_COMMON_ERP_FAILED) {
|
|
|
/* ensure propagation of failed status to new devices */
|
|
|
- zfcp_erp_port_failed(port, 14, NULL);
|
|
|
+ zfcp_erp_port_failed(port, "erpreo1", NULL);
|
|
|
return -EIO;
|
|
|
}
|
|
|
|
|
@@ -369,7 +371,7 @@ static int _zfcp_erp_port_reopen(struct zfcp_port *port, int clear, u8 id,
|
|
|
*
|
|
|
* Returns 0 if recovery has been triggered, < 0 if not.
|
|
|
*/
|
|
|
-int zfcp_erp_port_reopen(struct zfcp_port *port, int clear, u8 id, void *ref)
|
|
|
+int zfcp_erp_port_reopen(struct zfcp_port *port, int clear, char *id, void *ref)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
int retval;
|
|
@@ -386,12 +388,12 @@ int zfcp_erp_port_reopen(struct zfcp_port *port, int clear, u8 id, void *ref)
|
|
|
|
|
|
static void zfcp_erp_unit_block(struct zfcp_unit *unit, int clear_mask)
|
|
|
{
|
|
|
- zfcp_erp_modify_unit_status(unit, 19, NULL,
|
|
|
+ zfcp_erp_modify_unit_status(unit, "erublk1", NULL,
|
|
|
ZFCP_STATUS_COMMON_UNBLOCKED | clear_mask,
|
|
|
ZFCP_CLEAR);
|
|
|
}
|
|
|
|
|
|
-static void _zfcp_erp_unit_reopen(struct zfcp_unit *unit, int clear, u8 id,
|
|
|
+static void _zfcp_erp_unit_reopen(struct zfcp_unit *unit, int clear, char *id,
|
|
|
void *ref)
|
|
|
{
|
|
|
struct zfcp_adapter *adapter = unit->port->adapter;
|
|
@@ -411,7 +413,8 @@ static void _zfcp_erp_unit_reopen(struct zfcp_unit *unit, int clear, u8 id,
|
|
|
* @clear_mask: specifies flags in unit status to be cleared
|
|
|
* Return: 0 on success, < 0 on error
|
|
|
*/
|
|
|
-void zfcp_erp_unit_reopen(struct zfcp_unit *unit, int clear, u8 id, void *ref)
|
|
|
+void zfcp_erp_unit_reopen(struct zfcp_unit *unit, int clear, char *id,
|
|
|
+ void *ref)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
struct zfcp_port *port = unit->port;
|
|
@@ -437,28 +440,28 @@ static int status_change_clear(unsigned long mask, atomic_t *status)
|
|
|
static void zfcp_erp_adapter_unblock(struct zfcp_adapter *adapter)
|
|
|
{
|
|
|
if (status_change_set(ZFCP_STATUS_COMMON_UNBLOCKED, &adapter->status))
|
|
|
- zfcp_rec_dbf_event_adapter(16, NULL, adapter);
|
|
|
+ zfcp_rec_dbf_event_adapter("eraubl1", NULL, adapter);
|
|
|
atomic_set_mask(ZFCP_STATUS_COMMON_UNBLOCKED, &adapter->status);
|
|
|
}
|
|
|
|
|
|
static void zfcp_erp_port_unblock(struct zfcp_port *port)
|
|
|
{
|
|
|
if (status_change_set(ZFCP_STATUS_COMMON_UNBLOCKED, &port->status))
|
|
|
- zfcp_rec_dbf_event_port(18, NULL, port);
|
|
|
+ zfcp_rec_dbf_event_port("erpubl1", NULL, port);
|
|
|
atomic_set_mask(ZFCP_STATUS_COMMON_UNBLOCKED, &port->status);
|
|
|
}
|
|
|
|
|
|
static void zfcp_erp_unit_unblock(struct zfcp_unit *unit)
|
|
|
{
|
|
|
if (status_change_set(ZFCP_STATUS_COMMON_UNBLOCKED, &unit->status))
|
|
|
- zfcp_rec_dbf_event_unit(20, NULL, unit);
|
|
|
+ zfcp_rec_dbf_event_unit("eruubl1", NULL, unit);
|
|
|
atomic_set_mask(ZFCP_STATUS_COMMON_UNBLOCKED, &unit->status);
|
|
|
}
|
|
|
|
|
|
static void zfcp_erp_action_to_running(struct zfcp_erp_action *erp_action)
|
|
|
{
|
|
|
list_move(&erp_action->list, &erp_action->adapter->erp_running_head);
|
|
|
- zfcp_rec_dbf_event_action(145, erp_action);
|
|
|
+ zfcp_rec_dbf_event_action("erator1", erp_action);
|
|
|
}
|
|
|
|
|
|
static void zfcp_erp_strategy_check_fsfreq(struct zfcp_erp_action *act)
|
|
@@ -474,11 +477,11 @@ static void zfcp_erp_strategy_check_fsfreq(struct zfcp_erp_action *act)
|
|
|
if (act->status & (ZFCP_STATUS_ERP_DISMISSED |
|
|
|
ZFCP_STATUS_ERP_TIMEDOUT)) {
|
|
|
act->fsf_req->status |= ZFCP_STATUS_FSFREQ_DISMISSED;
|
|
|
- zfcp_rec_dbf_event_action(142, act);
|
|
|
+ zfcp_rec_dbf_event_action("erscf_1", act);
|
|
|
act->fsf_req->erp_action = NULL;
|
|
|
}
|
|
|
if (act->status & ZFCP_STATUS_ERP_TIMEDOUT)
|
|
|
- zfcp_rec_dbf_event_action(143, act);
|
|
|
+ zfcp_rec_dbf_event_action("erscf_2", act);
|
|
|
if (act->fsf_req->status & (ZFCP_STATUS_FSFREQ_COMPLETED |
|
|
|
ZFCP_STATUS_FSFREQ_DISMISSED))
|
|
|
act->fsf_req = NULL;
|
|
@@ -530,7 +533,7 @@ static void zfcp_erp_strategy_memwait(struct zfcp_erp_action *erp_action)
|
|
|
}
|
|
|
|
|
|
static void _zfcp_erp_port_reopen_all(struct zfcp_adapter *adapter,
|
|
|
- int clear, u8 id, void *ref)
|
|
|
+ int clear, char *id, void *ref)
|
|
|
{
|
|
|
struct zfcp_port *port;
|
|
|
|
|
@@ -538,8 +541,8 @@ static void _zfcp_erp_port_reopen_all(struct zfcp_adapter *adapter,
|
|
|
_zfcp_erp_port_reopen(port, clear, id, ref);
|
|
|
}
|
|
|
|
|
|
-static void _zfcp_erp_unit_reopen_all(struct zfcp_port *port, int clear, u8 id,
|
|
|
- void *ref)
|
|
|
+static void _zfcp_erp_unit_reopen_all(struct zfcp_port *port, int clear,
|
|
|
+ char *id, void *ref)
|
|
|
{
|
|
|
struct zfcp_unit *unit;
|
|
|
|
|
@@ -559,28 +562,28 @@ static void zfcp_erp_strategy_followup_actions(struct zfcp_erp_action *act)
|
|
|
|
|
|
case ZFCP_ERP_ACTION_REOPEN_ADAPTER:
|
|
|
if (status == ZFCP_ERP_SUCCEEDED)
|
|
|
- _zfcp_erp_port_reopen_all(adapter, 0, 70, NULL);
|
|
|
+ _zfcp_erp_port_reopen_all(adapter, 0, "ersfa_1", NULL);
|
|
|
else
|
|
|
- _zfcp_erp_adapter_reopen(adapter, 0, 71, NULL);
|
|
|
+ _zfcp_erp_adapter_reopen(adapter, 0, "ersfa_2", NULL);
|
|
|
break;
|
|
|
|
|
|
case ZFCP_ERP_ACTION_REOPEN_PORT_FORCED:
|
|
|
if (status == ZFCP_ERP_SUCCEEDED)
|
|
|
- _zfcp_erp_port_reopen(port, 0, 72, NULL);
|
|
|
+ _zfcp_erp_port_reopen(port, 0, "ersfa_3", NULL);
|
|
|
else
|
|
|
- _zfcp_erp_adapter_reopen(adapter, 0, 73, NULL);
|
|
|
+ _zfcp_erp_adapter_reopen(adapter, 0, "ersfa_4", NULL);
|
|
|
break;
|
|
|
|
|
|
case ZFCP_ERP_ACTION_REOPEN_PORT:
|
|
|
if (status == ZFCP_ERP_SUCCEEDED)
|
|
|
- _zfcp_erp_unit_reopen_all(port, 0, 74, NULL);
|
|
|
+ _zfcp_erp_unit_reopen_all(port, 0, "ersfa_5", NULL);
|
|
|
else
|
|
|
- _zfcp_erp_port_forced_reopen(port, 0, 75, NULL);
|
|
|
+ _zfcp_erp_port_forced_reopen(port, 0, "ersfa_6", NULL);
|
|
|
break;
|
|
|
|
|
|
case ZFCP_ERP_ACTION_REOPEN_UNIT:
|
|
|
if (status != ZFCP_ERP_SUCCEEDED)
|
|
|
- _zfcp_erp_port_reopen(unit->port, 0, 76, NULL);
|
|
|
+ _zfcp_erp_port_reopen(unit->port, 0, "ersfa_7", NULL);
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
@@ -617,7 +620,7 @@ static void zfcp_erp_enqueue_ptp_port(struct zfcp_adapter *adapter)
|
|
|
adapter->peer_d_id);
|
|
|
if (IS_ERR(port)) /* error or port already attached */
|
|
|
return;
|
|
|
- _zfcp_erp_port_reopen(port, 0, 150, NULL);
|
|
|
+ _zfcp_erp_port_reopen(port, 0, "ereptp1", NULL);
|
|
|
}
|
|
|
|
|
|
static int zfcp_erp_adapter_strat_fsf_xconf(struct zfcp_erp_action *erp_action)
|
|
@@ -640,9 +643,9 @@ static int zfcp_erp_adapter_strat_fsf_xconf(struct zfcp_erp_action *erp_action)
|
|
|
return ZFCP_ERP_FAILED;
|
|
|
}
|
|
|
|
|
|
- zfcp_rec_dbf_event_thread_lock(6, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erasfx1", adapter);
|
|
|
down(&adapter->erp_ready_sem);
|
|
|
- zfcp_rec_dbf_event_thread_lock(7, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erasfx2", adapter);
|
|
|
if (erp_action->status & ZFCP_STATUS_ERP_TIMEDOUT)
|
|
|
break;
|
|
|
|
|
@@ -681,9 +684,9 @@ static int zfcp_erp_adapter_strategy_open_fsf_xport(struct zfcp_erp_action *act)
|
|
|
if (ret)
|
|
|
return ZFCP_ERP_FAILED;
|
|
|
|
|
|
- zfcp_rec_dbf_event_thread_lock(8, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erasox1", adapter);
|
|
|
down(&adapter->erp_ready_sem);
|
|
|
- zfcp_rec_dbf_event_thread_lock(9, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erasox2", adapter);
|
|
|
if (act->status & ZFCP_STATUS_ERP_TIMEDOUT)
|
|
|
return ZFCP_ERP_FAILED;
|
|
|
|
|
@@ -714,7 +717,7 @@ static void zfcp_erp_adapter_strategy_close(struct zfcp_erp_action *act)
|
|
|
zfcp_fsf_req_dismiss_all(adapter);
|
|
|
adapter->fsf_req_seq_no = 0;
|
|
|
/* all ports and units are closed */
|
|
|
- zfcp_erp_modify_adapter_status(adapter, 24, NULL,
|
|
|
+ zfcp_erp_modify_adapter_status(adapter, "erascl1", NULL,
|
|
|
ZFCP_STATUS_COMMON_OPEN, ZFCP_CLEAR);
|
|
|
|
|
|
atomic_clear_mask(ZFCP_STATUS_ADAPTER_XCONFIG_OK |
|
|
@@ -832,7 +835,7 @@ static int zfcp_erp_open_ptp_port(struct zfcp_erp_action *act)
|
|
|
struct zfcp_port *port = act->port;
|
|
|
|
|
|
if (port->wwpn != adapter->peer_wwpn) {
|
|
|
- zfcp_erp_port_failed(port, 25, NULL);
|
|
|
+ zfcp_erp_port_failed(port, "eroptp1", NULL);
|
|
|
return ZFCP_ERP_FAILED;
|
|
|
}
|
|
|
port->d_id = adapter->peer_d_id;
|
|
@@ -986,7 +989,7 @@ static int zfcp_erp_strategy_check_unit(struct zfcp_unit *unit, int result)
|
|
|
"port 0x%016Lx\n",
|
|
|
(unsigned long long)unit->fcp_lun,
|
|
|
(unsigned long long)unit->port->wwpn);
|
|
|
- zfcp_erp_unit_failed(unit, 21, NULL);
|
|
|
+ zfcp_erp_unit_failed(unit, "erusck1", NULL);
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
@@ -1016,7 +1019,7 @@ static int zfcp_erp_strategy_check_port(struct zfcp_port *port, int result)
|
|
|
dev_err(&port->adapter->ccw_device->dev,
|
|
|
"ERP failed for remote port 0x%016Lx\n",
|
|
|
(unsigned long long)port->wwpn);
|
|
|
- zfcp_erp_port_failed(port, 22, NULL);
|
|
|
+ zfcp_erp_port_failed(port, "erpsck1", NULL);
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
@@ -1043,7 +1046,7 @@ static int zfcp_erp_strategy_check_adapter(struct zfcp_adapter *adapter,
|
|
|
dev_err(&adapter->ccw_device->dev,
|
|
|
"ERP cannot recover an error "
|
|
|
"on the FCP device\n");
|
|
|
- zfcp_erp_adapter_failed(adapter, 23, NULL);
|
|
|
+ zfcp_erp_adapter_failed(adapter, "erasck1", NULL);
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
@@ -1108,7 +1111,7 @@ static int zfcp_erp_strategy_statechange(struct zfcp_erp_action *act, int ret)
|
|
|
if (zfcp_erp_strat_change_det(&adapter->status, erp_status)) {
|
|
|
_zfcp_erp_adapter_reopen(adapter,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED,
|
|
|
- 67, NULL);
|
|
|
+ "ersscg1", NULL);
|
|
|
return ZFCP_ERP_EXIT;
|
|
|
}
|
|
|
break;
|
|
@@ -1118,7 +1121,7 @@ static int zfcp_erp_strategy_statechange(struct zfcp_erp_action *act, int ret)
|
|
|
if (zfcp_erp_strat_change_det(&port->status, erp_status)) {
|
|
|
_zfcp_erp_port_reopen(port,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED,
|
|
|
- 68, NULL);
|
|
|
+ "ersscg2", NULL);
|
|
|
return ZFCP_ERP_EXIT;
|
|
|
}
|
|
|
break;
|
|
@@ -1127,7 +1130,7 @@ static int zfcp_erp_strategy_statechange(struct zfcp_erp_action *act, int ret)
|
|
|
if (zfcp_erp_strat_change_det(&unit->status, erp_status)) {
|
|
|
_zfcp_erp_unit_reopen(unit,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED,
|
|
|
- 69, NULL);
|
|
|
+ "ersscg3", NULL);
|
|
|
return ZFCP_ERP_EXIT;
|
|
|
}
|
|
|
break;
|
|
@@ -1146,7 +1149,7 @@ static void zfcp_erp_action_dequeue(struct zfcp_erp_action *erp_action)
|
|
|
}
|
|
|
|
|
|
list_del(&erp_action->list);
|
|
|
- zfcp_rec_dbf_event_action(144, erp_action);
|
|
|
+ zfcp_rec_dbf_event_action("eractd1", erp_action);
|
|
|
|
|
|
switch (erp_action->action) {
|
|
|
case ZFCP_ERP_ACTION_REOPEN_UNIT:
|
|
@@ -1331,7 +1334,7 @@ static int zfcp_erp_strategy(struct zfcp_erp_action *erp_action)
|
|
|
erp_action->status |= ZFCP_STATUS_ERP_LOWMEM;
|
|
|
}
|
|
|
if (adapter->erp_total_count == adapter->erp_low_mem_count)
|
|
|
- _zfcp_erp_adapter_reopen(adapter, 0, 66, NULL);
|
|
|
+ _zfcp_erp_adapter_reopen(adapter, 0, "erstgy1", NULL);
|
|
|
else {
|
|
|
zfcp_erp_strategy_memwait(erp_action);
|
|
|
retval = ZFCP_ERP_CONTINUES;
|
|
@@ -1391,9 +1394,9 @@ static int zfcp_erp_thread(void *data)
|
|
|
zfcp_erp_wakeup(adapter);
|
|
|
}
|
|
|
|
|
|
- zfcp_rec_dbf_event_thread_lock(4, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erthrd1", adapter);
|
|
|
ignore = down_interruptible(&adapter->erp_ready_sem);
|
|
|
- zfcp_rec_dbf_event_thread_lock(5, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erthrd2", adapter);
|
|
|
}
|
|
|
|
|
|
atomic_clear_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_UP, &adapter->status);
|
|
@@ -1438,7 +1441,7 @@ void zfcp_erp_thread_kill(struct zfcp_adapter *adapter)
|
|
|
{
|
|
|
atomic_set_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_KILL, &adapter->status);
|
|
|
up(&adapter->erp_ready_sem);
|
|
|
- zfcp_rec_dbf_event_thread_lock(3, adapter);
|
|
|
+ zfcp_rec_dbf_event_thread_lock("erthrk1", adapter);
|
|
|
|
|
|
wait_event(adapter->erp_thread_wqh,
|
|
|
!(atomic_read(&adapter->status) &
|
|
@@ -1454,7 +1457,7 @@ void zfcp_erp_thread_kill(struct zfcp_adapter *adapter)
|
|
|
* @id: Event id for debug trace.
|
|
|
* @ref: Reference for debug trace.
|
|
|
*/
|
|
|
-void zfcp_erp_adapter_failed(struct zfcp_adapter *adapter, u8 id, void *ref)
|
|
|
+void zfcp_erp_adapter_failed(struct zfcp_adapter *adapter, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_modify_adapter_status(adapter, id, ref,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED, ZFCP_SET);
|
|
@@ -1466,7 +1469,7 @@ void zfcp_erp_adapter_failed(struct zfcp_adapter *adapter, u8 id, void *ref)
|
|
|
* @id: Event id for debug trace.
|
|
|
* @ref: Reference for debug trace.
|
|
|
*/
|
|
|
-void zfcp_erp_port_failed(struct zfcp_port *port, u8 id, void *ref)
|
|
|
+void zfcp_erp_port_failed(struct zfcp_port *port, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_modify_port_status(port, id, ref,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED, ZFCP_SET);
|
|
@@ -1478,7 +1481,7 @@ void zfcp_erp_port_failed(struct zfcp_port *port, u8 id, void *ref)
|
|
|
* @id: Event id for debug trace.
|
|
|
* @ref: Reference for debug trace.
|
|
|
*/
|
|
|
-void zfcp_erp_unit_failed(struct zfcp_unit *unit, u8 id, void *ref)
|
|
|
+void zfcp_erp_unit_failed(struct zfcp_unit *unit, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_modify_unit_status(unit, id, ref,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED, ZFCP_SET);
|
|
@@ -1505,7 +1508,7 @@ void zfcp_erp_wait(struct zfcp_adapter *adapter)
|
|
|
*
|
|
|
* Changes in common status bits are propagated to attached ports and units.
|
|
|
*/
|
|
|
-void zfcp_erp_modify_adapter_status(struct zfcp_adapter *adapter, u8 id,
|
|
|
+void zfcp_erp_modify_adapter_status(struct zfcp_adapter *adapter, char *id,
|
|
|
void *ref, u32 mask, int set_or_clear)
|
|
|
{
|
|
|
struct zfcp_port *port;
|
|
@@ -1539,7 +1542,7 @@ void zfcp_erp_modify_adapter_status(struct zfcp_adapter *adapter, u8 id,
|
|
|
*
|
|
|
* Changes in common status bits are propagated to attached units.
|
|
|
*/
|
|
|
-void zfcp_erp_modify_port_status(struct zfcp_port *port, u8 id, void *ref,
|
|
|
+void zfcp_erp_modify_port_status(struct zfcp_port *port, char *id, void *ref,
|
|
|
u32 mask, int set_or_clear)
|
|
|
{
|
|
|
struct zfcp_unit *unit;
|
|
@@ -1571,7 +1574,7 @@ void zfcp_erp_modify_port_status(struct zfcp_port *port, u8 id, void *ref,
|
|
|
* @mask: status bits to change
|
|
|
* @set_or_clear: ZFCP_SET or ZFCP_CLEAR
|
|
|
*/
|
|
|
-void zfcp_erp_modify_unit_status(struct zfcp_unit *unit, u8 id, void *ref,
|
|
|
+void zfcp_erp_modify_unit_status(struct zfcp_unit *unit, char *id, void *ref,
|
|
|
u32 mask, int set_or_clear)
|
|
|
{
|
|
|
if (set_or_clear == ZFCP_SET) {
|
|
@@ -1594,7 +1597,7 @@ void zfcp_erp_modify_unit_status(struct zfcp_unit *unit, u8 id, void *ref,
|
|
|
* @id: The debug trace id.
|
|
|
* @id: Reference for the debug trace.
|
|
|
*/
|
|
|
-void zfcp_erp_port_boxed(struct zfcp_port *port, u8 id, void *ref)
|
|
|
+void zfcp_erp_port_boxed(struct zfcp_port *port, char *id, void *ref)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
|
|
@@ -1611,7 +1614,7 @@ void zfcp_erp_port_boxed(struct zfcp_port *port, u8 id, void *ref)
|
|
|
* @id: The debug trace id.
|
|
|
* @id: Reference for the debug trace.
|
|
|
*/
|
|
|
-void zfcp_erp_unit_boxed(struct zfcp_unit *unit, u8 id, void *ref)
|
|
|
+void zfcp_erp_unit_boxed(struct zfcp_unit *unit, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_modify_unit_status(unit, id, ref,
|
|
|
ZFCP_STATUS_COMMON_ACCESS_BOXED, ZFCP_SET);
|
|
@@ -1627,7 +1630,7 @@ void zfcp_erp_unit_boxed(struct zfcp_unit *unit, u8 id, void *ref)
|
|
|
* Since the adapter has denied access, stop using the port and the
|
|
|
* attached units.
|
|
|
*/
|
|
|
-void zfcp_erp_port_access_denied(struct zfcp_port *port, u8 id, void *ref)
|
|
|
+void zfcp_erp_port_access_denied(struct zfcp_port *port, char *id, void *ref)
|
|
|
{
|
|
|
unsigned long flags;
|
|
|
|
|
@@ -1646,14 +1649,14 @@ void zfcp_erp_port_access_denied(struct zfcp_port *port, u8 id, void *ref)
|
|
|
*
|
|
|
* Since the adapter has denied access, stop using the unit.
|
|
|
*/
|
|
|
-void zfcp_erp_unit_access_denied(struct zfcp_unit *unit, u8 id, void *ref)
|
|
|
+void zfcp_erp_unit_access_denied(struct zfcp_unit *unit, char *id, void *ref)
|
|
|
{
|
|
|
zfcp_erp_modify_unit_status(unit, id, ref,
|
|
|
ZFCP_STATUS_COMMON_ERP_FAILED |
|
|
|
ZFCP_STATUS_COMMON_ACCESS_DENIED, ZFCP_SET);
|
|
|
}
|
|
|
|
|
|
-static void zfcp_erp_unit_access_changed(struct zfcp_unit *unit, u8 id,
|
|
|
+static void zfcp_erp_unit_access_changed(struct zfcp_unit *unit, char *id,
|
|
|
void *ref)
|
|
|
{
|
|
|
int status = atomic_read(&unit->status);
|
|
@@ -1664,7 +1667,7 @@ static void zfcp_erp_unit_access_changed(struct zfcp_unit *unit, u8 id,
|
|
|
zfcp_erp_unit_reopen(unit, ZFCP_STATUS_COMMON_ERP_FAILED, id, ref);
|
|
|
}
|
|
|
|
|
|
-static void zfcp_erp_port_access_changed(struct zfcp_port *port, u8 id,
|
|
|
+static void zfcp_erp_port_access_changed(struct zfcp_port *port, char *id,
|
|
|
void *ref)
|
|
|
{
|
|
|
struct zfcp_unit *unit;
|
|
@@ -1686,7 +1689,7 @@ static void zfcp_erp_port_access_changed(struct zfcp_port *port, u8 id,
|
|
|
* @id: Id for debug trace
|
|
|
* @ref: Reference for debug trace
|
|
|
*/
|
|
|
-void zfcp_erp_adapter_access_changed(struct zfcp_adapter *adapter, u8 id,
|
|
|
+void zfcp_erp_adapter_access_changed(struct zfcp_adapter *adapter, char *id,
|
|
|
void *ref)
|
|
|
{
|
|
|
struct zfcp_port *port;
|