summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen M. Cameron <scameron@beardog.cce.hp.com>2011-01-06 14:48:18 -0600
committerJames Bottomley <James.Bottomley@suse.de>2011-01-24 11:30:11 -0600
commit25c1e56a04e60af2414f8d81eda0fd10b8e7b961 (patch)
treebda04a91b4084dd0c9bbe9ecb25b473d496974f2
parent72ceeaecb748dff3d35b10d7518bed651b895f3e (diff)
downloadblackbird-op-linux-25c1e56a04e60af2414f8d81eda0fd10b8e7b961.tar.gz
blackbird-op-linux-25c1e56a04e60af2414f8d81eda0fd10b8e7b961.zip
[SCSI] hpsa: do not reset unknown boards on reset_devices
This is to prevent hpsa from resetting older boards which the cciss driver may be controlling. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r--drivers/scsi/hpsa.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 688b24333a6f..5b9cd41d9320 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -3140,7 +3140,11 @@ static __devinit int hpsa_kdump_hard_reset_controller(struct pci_dev *pdev)
* likely not be happy. Just forbid resetting this conjoined mess.
* The 640x isn't really supported by hpsa anyway.
*/
- hpsa_lookup_board_id(pdev, &board_id);
+ rc = hpsa_lookup_board_id(pdev, &board_id);
+ if (rc < 0) {
+ dev_warn(&pdev->dev, "Not resetting device.\n");
+ return -ENODEV;
+ }
if (board_id == 0x409C0E11 || board_id == 0x409D0E11)
return -ENOTSUPP;
OpenPOWER on IntegriCloud