1
0

qla2xxx: Prevent probe and board_disable race

The PCI register read checking introduced in commit fe1b806f4f
("qla2xxx: Disable adapter when we encounter a PCI disconnect") is
active during driver probe. Hold off scheduling any board removal until
the driver probe has completed. This ensures that the the board_disable
work structure is initialized and more importantly, avoids racing
qla2x00_probe_one.

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>
This commit is contained in:
Joe Lawrence
2014-08-26 17:12:29 -04:00
committed by Christoph Hellwig
parent beb9e315e6
commit 6b3839790b
3 changed files with 5 additions and 1 deletions

View File

@@ -3405,6 +3405,7 @@ typedef struct scsi_qla_host {
unsigned long pci_flags;
#define PFLG_DISCONNECTED 0 /* PCI device removed */
#define PFLG_DRIVER_REMOVING 1 /* PCI driver .remove */
#define PFLG_DRIVER_PROBING 2 /* PCI driver .probe */
uint32_t device_flags;
#define SWITCH_FOUND BIT_0