Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1372063

[PATCH] mpt3sas:Make sure mpt3sas adapter has been reset in scsih_resume

From Bastien Philbert <bastienphilbert@gmail.com>
Newsgroups linux.kernel
Subject [PATCH] mpt3sas:Make sure mpt3sas adapter has been reset in scsih_resume
Date 2016-04-06 01:40 +0200
Message-ID <rkIJI-3cj-9@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


This fixes the issue in the function scih_resume that we assume
that the mpt3sas adapter has been reset properly with a call to
mpt3sas_base_hard_reset_handler by checking if this function
call returns a error code and exit adpater resume prematurely

Signed-off-by: Bastien Philbert <bastienphilbert@gmail.com>
---
 drivers/scsi/mpt3sas/mpt3sas_scsih.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
index e0e4920..be2a7c3 100644
--- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
+++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
@@ -8892,7 +8892,11 @@ scsih_resume(struct pci_dev *pdev)
 	if (r)
 		return r;
 
-	mpt3sas_base_hard_reset_handler(ioc, CAN_SLEEP, SOFT_RESET);
+	r = mpt3sas_base_hard_reset_handler(ioc, CAN_SLEEP, SOFT_RESET);
+	if (r) {
+		mpt3sas_base_free_resources(ioc);
+		return r;
+	}
 	scsi_unblock_requests(shost);
 	mpt3sas_base_start_watchdog(ioc);
 	return 0;
-- 
2.5.0

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH] mpt3sas:Make sure mpt3sas adapter has been reset in scsih_resume Bastien Philbert <bastienphilbert@gmail.com> - 2016-04-06 01:40 +0200

csiph-web