forked from Minki/linux
scsi: qla2xxx: Remove extra register read
Remove extra register read for each interrupt for performance improvement. Signed-off-by: Quinn Tran <quinn.tran@cavium.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
1608cc4abf
commit
dc62c3bea8
@ -3157,7 +3157,6 @@ qla24xx_msix_rsp_q(int irq, void *dev_id)
|
||||
struct device_reg_24xx __iomem *reg;
|
||||
struct scsi_qla_host *vha;
|
||||
unsigned long flags;
|
||||
uint32_t stat = 0;
|
||||
|
||||
rsp = (struct rsp_que *) dev_id;
|
||||
if (!rsp) {
|
||||
@ -3171,19 +3170,11 @@ qla24xx_msix_rsp_q(int irq, void *dev_id)
|
||||
spin_lock_irqsave(&ha->hardware_lock, flags);
|
||||
|
||||
vha = pci_get_drvdata(ha->pdev);
|
||||
/*
|
||||
* Use host_status register to check to PCI disconnection before we
|
||||
* we process the response queue.
|
||||
*/
|
||||
stat = RD_REG_DWORD(®->host_status);
|
||||
if (qla2x00_check_reg32_for_disconnect(vha, stat))
|
||||
goto out;
|
||||
qla24xx_process_response_queue(vha, rsp);
|
||||
if (!ha->flags.disable_msix_handshake) {
|
||||
WRT_REG_DWORD(®->hccr, HCCRX_CLR_RISC_INT);
|
||||
RD_REG_DWORD_RELAXED(®->hccr);
|
||||
}
|
||||
out:
|
||||
spin_unlock_irqrestore(&ha->hardware_lock, flags);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
|
@ -6530,7 +6530,6 @@ qlt_24xx_process_atio_queue(struct scsi_qla_host *vha, uint8_t ha_locked)
|
||||
|
||||
/* Adjust ring index */
|
||||
WRT_REG_DWORD(ISP_ATIO_Q_OUT(vha), ha->tgt.atio_ring_index);
|
||||
RD_REG_DWORD_RELAXED(ISP_ATIO_Q_OUT(vha));
|
||||
}
|
||||
|
||||
void
|
||||
|
Loading…
Reference in New Issue
Block a user