diff options
author | Hemant Hariyani <hemanthariyani@ti.com> | 2014-01-22 15:29:44 -0600 |
---|---|---|
committer | Gerrit Code Review <gerrit2@git.omapzoom.org> | 2014-01-22 15:29:44 -0600 |
commit | 55c1afb02872bb21636024be168d19536a922555 (patch) | |
tree | 286cbbd005d2cb4725c8567257a78b4ed8b0dfb6 | |
parent | b59d0d93f264fe3d789644674f8d451a6e3a137a (diff) | |
parent | e1f877e7b0df9aa115fdc235a40406dd05c03aa2 (diff) | |
download | proprietary-open-jacinto-55c1afb02872bb21636024be168d19536a922555.tar.gz |
Merge "SGX-BIN: Binaries and KM source with mutex nesting" into d-jb-mr2.0-release
-rw-r--r-- | jacinto6/sgx.tgz | bin | 2638310 -> 2638674 bytes | |||
-rw-r--r-- | jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mm.c | 12 | ||||
-rw-r--r-- | jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/module.c | 6 | ||||
-rw-r--r-- | jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mutex.h | 3 | ||||
-rw-r--r-- | jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/pvr_debug.c | 2 |
5 files changed, 13 insertions, 10 deletions
diff --git a/jacinto6/sgx.tgz b/jacinto6/sgx.tgz Binary files differindex 7aaa048..9d1683b 100644 --- a/jacinto6/sgx.tgz +++ b/jacinto6/sgx.tgz diff --git a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mm.c b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mm.c index b194794..56cf52c 100644 --- a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mm.c +++ b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mm.c @@ -317,7 +317,7 @@ DebugMemAllocRecordAdd(DEBUG_MEM_ALLOC_TYPE eAllocType, { DEBUG_MEM_ALLOC_REC *psRecord; - LinuxLockMutex(&g_sDebugMutex); + LinuxLockMutexNested(&g_sDebugMutex, PVRSRV_LOCK_CLASS_MM_DEBUG); psRecord = kmalloc(sizeof(DEBUG_MEM_ALLOC_REC), GFP_KERNEL); @@ -412,7 +412,7 @@ DebugMemAllocRecordRemove(DEBUG_MEM_ALLOC_TYPE eAllocType, IMG_VOID *pvKey, IMG_ { /* DEBUG_MEM_ALLOC_REC **ppsCurrentRecord;*/ - LinuxLockMutex(&g_sDebugMutex); + LinuxLockMutexNested(&g_sDebugMutex, PVRSRV_LOCK_CLASS_MM_DEBUG); /* Locate the corresponding allocation entry */ if (!List_DEBUG_MEM_ALLOC_REC_IMG_BOOL_Any_va(g_MemoryRecords, @@ -1968,7 +1968,7 @@ DebugLinuxMemAreaRecordAdd(LinuxMemArea *psLinuxMemArea, IMG_UINT32 ui32Flags) DEBUG_LINUX_MEM_AREA_REC *psNewRecord; const IMG_CHAR *pi8FlagsString; - LinuxLockMutex(&g_sDebugMutex); + LinuxLockMutexNested(&g_sDebugMutex, PVRSRV_LOCK_CLASS_MM_DEBUG); if (psLinuxMemArea->eAreaType != LINUX_MEM_AREA_SUB_ALLOC) { @@ -2037,7 +2037,7 @@ DebugLinuxMemAreaRecordFind(LinuxMemArea *psLinuxMemArea) { DEBUG_LINUX_MEM_AREA_REC *psCurrentRecord; - LinuxLockMutex(&g_sDebugMutex); + LinuxLockMutexNested(&g_sDebugMutex, PVRSRV_LOCK_CLASS_MM_DEBUG); psCurrentRecord = List_DEBUG_LINUX_MEM_AREA_REC_Any_va(g_LinuxMemAreaRecords, MatchLinuxMemArea_AnyVaCb, psLinuxMemArea); @@ -2054,7 +2054,7 @@ DebugLinuxMemAreaRecordRemove(LinuxMemArea *psLinuxMemArea) { DEBUG_LINUX_MEM_AREA_REC *psCurrentRecord; - LinuxLockMutex(&g_sDebugMutex); + LinuxLockMutexNested(&g_sDebugMutex, PVRSRV_LOCK_CLASS_MM_DEBUG); if (psLinuxMemArea->eAreaType != LINUX_MEM_AREA_SUB_ALLOC) { @@ -2259,7 +2259,7 @@ static void ProcSeqStartstopDebugMutex(struct seq_file *sfile, IMG_BOOL start) { if (start) { - LinuxLockMutex(&g_sDebugMutex); + LinuxLockMutexNested(&g_sDebugMutex, PVRSRV_LOCK_CLASS_MM_DEBUG); } else { diff --git a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/module.c b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/module.c index e7b161f..6d50cdb 100644 --- a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/module.c +++ b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/module.c @@ -489,7 +489,7 @@ PVR_MOD_STATIC void PVRSRVDriverShutdown(LDM_DEV *pDevice) { PVR_TRACE(("PVRSRVDriverShutdown(pDevice=%p)", pDevice)); - LinuxLockMutex(&gsPMMutex); + LinuxLockMutexNested(&gsPMMutex, PVRSRV_LOCK_CLASS_POWER); if (!bDriverIsShutdown && !bDriverIsSuspended) { @@ -555,7 +555,7 @@ PVR_MOD_STATIC int PVRSRVDriverSuspend(LDM_DEV *pDevice, pm_message_t state) #if !(defined(DEBUG) && defined(PVR_MANUAL_POWER_CONTROL) && !defined(SUPPORT_DRI_DRM)) PVR_TRACE(( "PVRSRVDriverSuspend(pDevice=%p)", pDevice)); - LinuxLockMutex(&gsPMMutex); + LinuxLockMutexNested(&gsPMMutex, PVRSRV_LOCK_CLASS_POWER); if (!bDriverIsSuspended && !bDriverIsShutdown) { @@ -612,7 +612,7 @@ PVR_MOD_STATIC int PVRSRVDriverResume(LDM_DEV *pDevice) #if !(defined(DEBUG) && defined(PVR_MANUAL_POWER_CONTROL) && !defined(SUPPORT_DRI_DRM)) PVR_TRACE(("PVRSRVDriverResume(pDevice=%p)", pDevice)); - LinuxLockMutex(&gsPMMutex); + LinuxLockMutexNested(&gsPMMutex, PVRSRV_LOCK_CLASS_POWER); if (bDriverIsSuspended && !bDriverIsShutdown) { diff --git a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mutex.h b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mutex.h index 816cf4a..09ae46d 100644 --- a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mutex.h +++ b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/mutex.h @@ -74,8 +74,11 @@ typedef struct { enum PVRSRV_MUTEX_LOCK_CLASS { + PVRSRV_LOCK_CLASS_POWER, PVRSRV_LOCK_CLASS_BRIDGE, PVRSRV_LOCK_CLASS_MMAP, + PVRSRV_LOCK_CLASS_MM_DEBUG, + PVRSRV_LOCK_CLASS_PVR_DEBUG, }; extern IMG_VOID LinuxInitMutex(PVRSRV_LINUX_MUTEX *psPVRSRVMutex); diff --git a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/pvr_debug.c b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/pvr_debug.c index 04e42ad..3958f84 100644 --- a/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/pvr_debug.c +++ b/jacinto6/sgx_src/eurasia_km/services4/srvkm/env/linux/pvr_debug.c @@ -128,7 +128,7 @@ static inline void GetBufferLock(unsigned long *pulLockFlags) #if !defined(PVR_DEBUG_ALWAYS_USE_SPINLOCK) else { - LinuxLockMutex(&gsDebugMutexNonIRQ); + LinuxLockMutexNested(&gsDebugMutexNonIRQ, PVRSRV_LOCK_CLASS_PVR_DEBUG); } #endif } |