[SCSI] qla1280: Drop host_lock while requesting firmware
request_firmware() may sleep and it appears to be safe to release the spinlock here. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Cc: stable@kernel.org Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
parent
7c56533cf4
commit
2cec802980
|
@ -1640,8 +1640,10 @@ qla1280_load_firmware_pio(struct scsi_qla_host *ha)
|
|||
uint16_t mb[MAILBOX_REGISTER_COUNT], i;
|
||||
int err;
|
||||
|
||||
spin_unlock_irq(ha->host->host_lock);
|
||||
err = request_firmware(&fw, ql1280_board_tbl[ha->devnum].fwname,
|
||||
&ha->pdev->dev);
|
||||
spin_lock_irq(ha->host->host_lock);
|
||||
if (err) {
|
||||
printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
|
||||
ql1280_board_tbl[ha->devnum].fwname, err);
|
||||
|
@ -1699,8 +1701,10 @@ qla1280_load_firmware_dma(struct scsi_qla_host *ha)
|
|||
return -ENOMEM;
|
||||
#endif
|
||||
|
||||
spin_unlock_irq(ha->host->host_lock);
|
||||
err = request_firmware(&fw, ql1280_board_tbl[ha->devnum].fwname,
|
||||
&ha->pdev->dev);
|
||||
spin_lock_irq(ha->host->host_lock);
|
||||
if (err) {
|
||||
printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
|
||||
ql1280_board_tbl[ha->devnum].fwname, err);
|
||||
|
|
Loading…
Reference in New Issue