Changeset 5468464 in rtems
- Timestamp:
- 11/11/21 07:44:29 (15 months ago)
- Branches:
- master
- Children:
- 675e879
- Parents:
- 3b6e263a
- git-author:
- Sebastian Huber <sebastian.huber@…> (11/11/21 07:44:29)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (11/23/21 10:00:28)
- Location:
- cpukit
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
cpukit/include/rtems/score/status.h
r3b6e263a r5468464 107 107 STATUS_INTERRUPTED = 108 108 STATUS_BUILD( STATUS_CLASSIC_INTERNAL_ERROR, EINTR ), 109 STATUS_INTERNAL_ERROR = 110 STATUS_BUILD( STATUS_CLASSIC_INTERNAL_ERROR, ENOTSUP ), 109 111 STATUS_INVALID_ADDRESS = 110 112 STATUS_BUILD( STATUS_CLASSIC_INVALID_ADDRESS, EFAULT ), -
cpukit/include/rtems/score/threadimpl.h
r3b6e263a r5468464 2699 2699 * 2700 2700 * @param[in, out] the_thread is the thread. 2701 * 2702 * @param status is the thread wait status. 2701 2703 */ 2702 2704 RTEMS_INLINE_ROUTINE void _Thread_Timer_remove_and_continue( 2703 Thread_Control *the_thread 2705 Thread_Control *the_thread, 2706 Status_Control status 2704 2707 ) 2705 2708 { … … 2708 2711 _Thread_MP_Extract_proxy( the_thread ); 2709 2712 #endif 2710 _Thread_ queue_Extract( the_thread);2713 _Thread_Continue( the_thread, status ); 2711 2714 } 2712 2715 -
cpukit/posix/src/psignalunblockthread.c
r3b6e263a r5468464 176 176 } 177 177 178 static void _POSIX_signals_Interrupt_thread( Thread_Control *the_thread )179 {180 #if defined(RTEMS_MULTIPROCESSING)181 _Thread_MP_Extract_proxy( the_thread );182 #endif183 the_thread->Wait.return_code = STATUS_INTERRUPTED;184 _Thread_queue_Extract( the_thread );185 }186 187 178 bool _POSIX_signals_Unblock_thread( 188 179 Thread_Control *the_thread, … … 216 207 } 217 208 218 _ POSIX_signals_Interrupt_thread( the_thread);209 _Thread_Timer_remove_and_continue( the_thread, STATUS_INTERRUPTED ); 219 210 return _POSIX_signals_Unblock_thread_done( the_thread, api, true ); 220 211 } … … 246 237 247 238 if ( _States_Is_interruptible_by_signal( the_thread->current_state ) ) { 248 _ POSIX_signals_Interrupt_thread( the_thread);239 _Thread_Timer_remove_and_continue( the_thread, STATUS_INTERRUPTED ); 249 240 } 250 241 } -
cpukit/score/src/threadrestart.c
r3b6e263a r5468464 138 138 139 139 _Thread_Set_state( the_thread, STATES_ZOMBIE ); 140 _Thread_Timer_remove_and_continue( the_thread );140 _Thread_Timer_remove_and_continue( the_thread, STATUS_INTERNAL_ERROR ); 141 141 142 142 /* … … 358 358 * SMP configurations. We could interrupt an extract operation on another 359 359 * processor disregarding the thread wait flags. Rely on 360 * _Thread_ queue_Extract() for removal of these states.360 * _Thread_Continue() for removal of these states. 361 361 */ 362 362 _Thread_Clear_state_locked( … … 409 409 _Thread_State_release( the_thread, lock_context ); 410 410 411 _Thread_Timer_remove_and_continue( the_thread );411 _Thread_Timer_remove_and_continue( the_thread, STATUS_INTERNAL_ERROR ); 412 412 _Thread_Remove_life_change_request( the_thread ); 413 413 } else {
Note: See TracChangeset
for help on using the changeset viewer.