Changeset 580 for trunk/kernel/libk
- Timestamp:
- Oct 8, 2018, 11:31:42 AM (6 years ago)
- Location:
- trunk/kernel/libk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/libk/busylock.c
r563 r580 77 77 #if DEBUG_BUSYLOCK 78 78 if( (lock->type != LOCK_CHDEV_TXT0) && 79 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) &&80 79 ((uint32_t)hal_get_cycles() > DEBUG_BUSYLOCK) ) 81 80 { … … 84 83 // update thread list of busylocks 85 84 xlist_add_last( root_xp , XPTR( local_cxy , &lock->xlist ) ); 85 } 86 #endif 86 87 87 // display list of taken locks for the selected thread 88 thread_display_busylocks( lock->type , true ); 88 #if( DEBUG_BUSYLOCK && DEBUG_BUSYLOCK_THREAD_XP ) 89 if( (lock->type != LOCK_CHDEV_TXT0) && 90 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) ) 91 { 92 // get cluster and local pointer of target thread 93 cxy_t thread_cxy = GET_CXY( DEBUG_BUSYLOCK_THREAD_XP ); 94 thread_t * thread_ptr = GET_PTR( DEBUG_BUSYLOCK_THREAD_XP ); 95 96 // display message on kernel TXT0 97 printk("\n### thread [%x,%x] ACQUIRE lock %s\n", 98 thread_cxy, thread_ptr, lock_type_str[lock->type] ); 89 99 } 90 100 #endif … … 111 121 #if DEBUG_BUSYLOCK 112 122 if( (lock->type != LOCK_CHDEV_TXT0) && 113 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) &&114 123 ((uint32_t)hal_get_cycles() > DEBUG_BUSYLOCK) ) 115 124 { 116 125 // remove lock from thread list of busylocks 117 126 xlist_unlink( XPTR( local_cxy , &lock->xlist ) ); 127 } 128 #endif 118 129 119 // display list of taken locks for the selected thread 120 thread_display_busylocks( lock->type , false ); 130 #if( DEBUG_BUSYLOCK && DEBUG_BUSYLOCK_THREAD_XP ) 131 if( (lock->type != LOCK_CHDEV_TXT0) && 132 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) ) 133 { 134 // get cluster and local pointer of target thread 135 cxy_t thread_cxy = GET_CXY( DEBUG_BUSYLOCK_THREAD_XP ); 136 thread_t * thread_ptr = GET_PTR( DEBUG_BUSYLOCK_THREAD_XP ); 137 138 // display message on kernel TXT0 139 printk("\n### thread [%x,%x] RELEASE lock %s\n", 140 thread_cxy, thread_ptr, lock_type_str[lock->type] ); 121 141 } 122 142 #endif -
trunk/kernel/libk/remote_busylock.c
r563 r580 88 88 uint32_t type = hal_remote_l32( XPTR( lock_cxy , &lock_ptr->type ) ); 89 89 if( (type != LOCK_CHDEV_TXT0) && 90 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) &&91 90 ((uint32_t)hal_get_cycles() > DEBUG_BUSYLOCK) ) 92 91 { … … 95 94 // update thread list of busyslocks 96 95 xlist_add_last( root_xp , XPTR( lock_cxy , &lock_ptr->xlist ) ); 96 } 97 #endif 97 98 98 // display busylocks for the selected thread (acquire) 99 thread_display_busylocks( type , true ); 99 #if( DEBUG_BUSYLOCK && DEBUG_BUSYLOCK_THREAD_XP ) 100 if( (type != LOCK_CHDEV_TXT0) && 101 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) ) 102 { 103 // get cluster and local pointer of target thread 104 cxy_t thread_cxy = GET_CXY( DEBUG_BUSYLOCK_THREAD_XP ); 105 thread_t * thread_ptr = GET_PTR( DEBUG_BUSYLOCK_THREAD_XP ); 106 107 // display message on kernel TXT0 108 printk("\n### thread [%x,%x] ACQUIRE lock %s\n", 109 thread_cxy, thread_ptr, lock_type_str[type] ); 100 110 } 101 111 #endif … … 132 142 // remove lock from thread list of busyslocks 133 143 xlist_unlink( XPTR( lock_cxy , &lock_ptr->xlist ) ); 144 } 145 #endif 134 146 135 // display busylocks for the selected thread (release) 136 thread_display_busylocks( type , false ); 147 #if (DEBUG_BUSYLOCK && DEBUG_BUSYLOCK_THREAD_XP ) 148 if( (type != LOCK_CHDEV_TXT0) && 149 (XPTR( local_cxy , this ) == DEBUG_BUSYLOCK_THREAD_XP) ) 150 { 151 // get cluster and local pointer of target thread 152 cxy_t thread_cxy = GET_CXY( DEBUG_BUSYLOCK_THREAD_XP ); 153 thread_t * thread_ptr = GET_PTR( DEBUG_BUSYLOCK_THREAD_XP ); 154 155 // display message on kernel TXT0 156 printk("\n### thread [%x,%x] RELEASE lock %s\n", 157 thread_cxy, thread_ptr, lock_type_str[type] ); 137 158 } 138 159 #endif
Note: See TracChangeset
for help on using the changeset viewer.