Ignore:
Timestamp:
Jan 8, 2018, 2:25:39 PM (4 years ago)
Author:
alain
Message:

Fix a bug in hal_kentry.S : the "uzone" pointer in the thread descriptor
must not be modified in case of interrupt.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/kern/chdev.c

    r408 r418  
    123123    uint32_t   save_sr;       // for critical section
    124124
     125#if CONFIG_READ_DEBUG
     126enter_chdev_cmd = hal_time_stamp();
     127#endif
     128
    125129    thread_t * this = CURRENT_THREAD;
    126130
     
    187191    hal_restore_irq( save_sr );
    188192
     193#if CONFIG_READ_DEBUG
     194exit_chdev_cmd = hal_time_stamp();
     195#endif
     196
    189197}  // end chdev_register_command()
    190198
     
    253261            xlist_unlink( XPTR( client_cxy , &client_ptr->wait_list ) );
    254262            remote_spinlock_unlock( lock_xp );
     263
     264            // unblock client thread
     265            thread_unblock( client_xp , THREAD_BLOCKED_IO );
    255266
    256267chdev_dmsg("\n[DBG] %s : thread %x complete operation for client %x / cycle %d\n",
Note: See TracChangeset for help on using the changeset viewer.