changeset 10360:e5556a0a765a

6866119 system panic when multiple applications access mpt_sas
author Yong-Feng Du <Yongfeng.Du@Sun.COM>
date Fri, 21 Aug 2009 13:20:13 +0800
parents 1020a07ebbce
children 6479250154ed
files usr/src/uts/common/io/scsi/adapters/mpt_sas/mptsas.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/uts/common/io/scsi/adapters/mpt_sas/mptsas.c	Thu Aug 20 21:27:42 2009 -0700
+++ b/usr/src/uts/common/io/scsi/adapters/mpt_sas/mptsas.c	Fri Aug 21 13:20:13 2009 +0800
@@ -490,7 +490,7 @@
 };
 
 
-#define	MPTSAS_MOD_STRING "MPTSAS HBA Driver 00.00.00.16"
+#define	MPTSAS_MOD_STRING "MPTSAS HBA Driver 00.00.00.17"
 #define	CDATE "MPTSAS was compiled on "__DATE__
 /* LINTED E_STATIC_UNUSED */
 static char *MPTWASCOMPILEDON = CDATE;
@@ -9940,8 +9940,10 @@
 				break;
 			}
 			mutex_enter(&mpt->m_mutex);
-			if (mpt->m_passthru_in_progress)
+			if (mpt->m_passthru_in_progress) {
+				mutex_exit(&mpt->m_mutex);
 				return (EBUSY);
+			}
 			mpt->m_passthru_in_progress = 1;
 			status = mptsas_pass_thru(mpt, &passthru_data, mode);
 			mpt->m_passthru_in_progress = 0;