summaryrefslogtreecommitdiff
path: root/drivers/scsi
diff options
context:
space:
mode:
authorStephen Cameron <stephenmcameron@gmail.com>2015-01-23 22:44:07 (GMT)
committerJames Bottomley <JBottomley@Parallels.com>2015-02-02 17:57:42 (GMT)
commite4aa3e6ae2a82ecfce7eecc6c52dcaba7b9e3f84 (patch)
tree5f57c08e018dce0c86e95869df28560f0c84a927 /drivers/scsi
parent6f99a9160f1947569bc17b85fbe7353a1090dfe7 (diff)
downloadlinux-e4aa3e6ae2a82ecfce7eecc6c52dcaba7b9e3f84.tar.xz
hpsa: do not ack controller events on controllers that do not support it
Acking controller events on controllers that do not support it can cause such controllers to lock up. Reviewed-by: Scott Teel <scott.teel@pmcs.com> Signed-off-by: Joe Handzik <joseph.t.handzik@hp.com> Signed-off-by: Don Brace <don.brace@pmcs.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/hpsa.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 5abd49d..afd192d 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -6674,6 +6674,9 @@ static void hpsa_ack_ctlr_events(struct ctlr_info *h)
int i;
char *event_type;
+ if (!(h->fw_support & MISC_FW_EVENT_NOTIFY))
+ return;
+
/* Ask the controller to clear the events we're handling. */
if ((h->transMethod & (CFGTBL_Trans_io_accel1
| CFGTBL_Trans_io_accel2)) &&