hpsa: fix event filtering to prevent excessive rescans with old firmware
authorStephen M. Cameron <scameron@beardog.cce.hp.com>
Thu, 29 May 2014 15:53:44 +0000 (10:53 -0500)
committerChristoph Hellwig <hch@lst.de>
Mon, 2 Jun 2014 07:54:59 +0000 (09:54 +0200)
CTLR_STATE_CHANGE_EVENT and CTLR_STATE_CHANGE_EVENT_REDUNDANT_CNTRL
do not require rescans to be initiated.  Current firmware filters out
these events already, but some out of date firmware doesn't, so the
driver needs to filter them out too.  Without this change and with out
of date firmware you may see the driver spending a lot of time
scanning devices unnecessarily on some Smart Arrays.

Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>
Reviewed-by: Justin Lindley <justin.lindley@hp.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/scsi/hpsa.h

index 0a5d91c..24472ce 100644 (file)
@@ -229,11 +229,9 @@ struct ctlr_info {
 #define CTLR_STATE_CHANGE_EVENT_AIO_CONFIG_CHANGE      (1 << 31)
 
 #define RESCAN_REQUIRED_EVENT_BITS \
-               (CTLR_STATE_CHANGE_EVENT | \
-               CTLR_ENCLOSURE_HOT_PLUG_EVENT | \
+               (CTLR_ENCLOSURE_HOT_PLUG_EVENT | \
                CTLR_STATE_CHANGE_EVENT_PHYSICAL_DRV | \
                CTLR_STATE_CHANGE_EVENT_LOGICAL_DRV | \
-               CTLR_STATE_CHANGE_EVENT_REDUNDANT_CNTRL | \
                CTLR_STATE_CHANGE_EVENT_AIO_ENABLED_DISABLED | \
                CTLR_STATE_CHANGE_EVENT_AIO_CONFIG_CHANGE)
        spinlock_t offline_device_lock;