aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aic94xx/aic94xx_seq.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/aic94xx/aic94xx_seq.c')
-rw-r--r--drivers/scsi/aic94xx/aic94xx_seq.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/aic94xx/aic94xx_seq.c b/drivers/scsi/aic94xx/aic94xx_seq.c
index 0d343cfd433..2768fe4d66b 100644
--- a/drivers/scsi/aic94xx/aic94xx_seq.c
+++ b/drivers/scsi/aic94xx/aic94xx_seq.c
@@ -1395,7 +1395,9 @@ void asd_update_port_links(struct asd_ha_struct *asd_ha, struct asd_phy *phy)
1395 u8 phy_is_up; 1395 u8 phy_is_up;
1396 u8 mask; 1396 u8 mask;
1397 int i, err; 1397 int i, err;
1398 unsigned long flags;
1398 1399
1400 spin_lock_irqsave(&asd_ha->hw_prof.ddb_lock, flags);
1399 for_each_phy(phy_mask, mask, i) 1401 for_each_phy(phy_mask, mask, i)
1400 asd_ddbsite_write_byte(asd_ha, 0, 1402 asd_ddbsite_write_byte(asd_ha, 0,
1401 offsetof(struct asd_ddb_seq_shared, 1403 offsetof(struct asd_ddb_seq_shared,
@@ -1415,6 +1417,7 @@ void asd_update_port_links(struct asd_ha_struct *asd_ha, struct asd_phy *phy)
1415 break; 1417 break;
1416 } 1418 }
1417 } 1419 }
1420 spin_unlock_irqrestore(&asd_ha->hw_prof.ddb_lock, flags);
1418 1421
1419 if (err) 1422 if (err)
1420 asd_printk("couldn't update DDB 0:error:%d\n", err); 1423 asd_printk("couldn't update DDB 0:error:%d\n", err);