summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_os.c
diff options
context:
space:
mode:
authorJoe Lawrence2014-08-26 23:11:41 +0200
committerChristoph Hellwig2014-09-16 18:09:59 +0200
commitc821e0d5b20006acdaca7aa378097a084986e37b (patch)
tree18da6d8ace17b53dcf8785bd679848eaf08d1f60 /drivers/scsi/qla2xxx/qla_os.c
parentqla2xxx: Use qla2x00_clear_drv_active on probe failure (diff)
downloadkernel-qcow2-linux-c821e0d5b20006acdaca7aa378097a084986e37b.tar.gz
kernel-qcow2-linux-c821e0d5b20006acdaca7aa378097a084986e37b.tar.xz
kernel-qcow2-linux-c821e0d5b20006acdaca7aa378097a084986e37b.zip
qla2xxx: Collect PCI register checks and board_disable scheduling
Add an uint16_t variant of qla2x00_check_reg_for_disconnect and use these routines to check and schedule a PCI-disconnected board from a centralized place. Signed-off-by: Joe Lawrence <joe.lawrence@stratus.com> Acked-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_os.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 53449d7eab91..3bfa89d1da75 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -5183,13 +5183,7 @@ qla2x00_timer(scsi_qla_host_t *vha)
*/
if (!pci_channel_offline(ha->pdev)) {
pci_read_config_word(ha->pdev, PCI_VENDOR_ID, &w);
- if (w == 0xffff)
- /*
- * Schedule this on the default system workqueue so that
- * all the adapter workqueues and the DPC thread can be
- * shutdown cleanly.
- */
- schedule_work(&ha->board_disable);
+ qla2x00_check_reg16_for_disconnect(vha, w);
}
/* Make sure qla82xx_watchdog is run only for physical port */