mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-22 05:01:27 +00:00
qla2x00_schedule_rport_del() must used _irq[save,restore] spinlocks, because it can be called on the IRQ.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1230 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
@@ -1962,15 +1962,16 @@ qla2x00_schedule_rport_del(struct scsi_qla_host *ha, fc_port_t *fcport,
|
||||
int defer)
|
||||
{
|
||||
struct fc_rport *rport;
|
||||
unsigned long flags;
|
||||
|
||||
if (!fcport->rport)
|
||||
return;
|
||||
|
||||
rport = fcport->rport;
|
||||
if (defer) {
|
||||
spin_lock_irq(ha->host->host_lock);
|
||||
spin_lock_irqsave(ha->host->host_lock, flags);
|
||||
fcport->drport = rport;
|
||||
spin_unlock_irq(ha->host->host_lock);
|
||||
spin_unlock_irqrestore(ha->host->host_lock, flags);
|
||||
set_bit(FCPORT_UPDATE_NEEDED, &ha->dpc_flags);
|
||||
qla2xxx_wake_dpc(ha);
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user