|
@@ -149,6 +149,7 @@ qla2x00_mark_vp_devices_dead(scsi_qla_host_t *vha)
|
|
|
int
|
|
|
qla24xx_disable_vp(scsi_qla_host_t *vha)
|
|
|
{
|
|
|
+ unsigned long flags;
|
|
|
int ret;
|
|
|
|
|
|
ret = qla24xx_control_vp(vha, VCE_COMMAND_DISABLE_VPS_LOGO_ALL);
|
|
@@ -156,7 +157,9 @@ qla24xx_disable_vp(scsi_qla_host_t *vha)
|
|
|
atomic_set(&vha->loop_down_timer, LOOP_DOWN_TIME);
|
|
|
|
|
|
/* Remove port id from vp target map */
|
|
|
+ spin_lock_irqsave(&vha->hw->vport_slock, flags);
|
|
|
qlt_update_vp_map(vha, RESET_AL_PA);
|
|
|
+ spin_unlock_irqrestore(&vha->hw->vport_slock, flags);
|
|
|
|
|
|
qla2x00_mark_vp_devices_dead(vha);
|
|
|
atomic_set(&vha->vp_state, VP_FAILED);
|