comparison packages/kernel/current/src/sync/cnt_sem2.cxx @ 124:0ec04793409a ecos-sw-2000-09-11

Merge from eCos master repository on 2000-09-11-03:00:13-BST
author jlarmour
date Mon, 11 Sep 2000 02:42:46 +0000
parents 6ed91473a1cd
children e0c0827131d1
comparison
equal deleted inserted replaced
123:9b71e8e665a3 124:0ec04793409a
112 self->sleep(); 112 self->sleep();
113 queue.enqueue( self ); 113 queue.enqueue( self );
114 114
115 CYG_INSTRUMENT_CNTSEM( WAIT, this, 0 ); 115 CYG_INSTRUMENT_CNTSEM( WAIT, this, 0 );
116 116
117 CYG_ASSERT( Cyg_Scheduler::get_sched_lock() == 1,
118 "Called with non-zero scheduler lock");
119
120 Cyg_Scheduler::unlock(); 117 Cyg_Scheduler::unlock();
121 118
122 CYG_INSTRUMENT_CNTSEM( WOKE, this, count ); 119 CYG_INSTRUMENT_CNTSEM( WOKE, this, count );
123 120
124 switch( self->get_wake_reason() ) 121 switch( self->get_wake_reason() )
178 if( Cyg_Thread::NONE == self->get_wake_reason() ) 175 if( Cyg_Thread::NONE == self->get_wake_reason() )
179 queue.enqueue( self ); 176 queue.enqueue( self );
180 177
181 CYG_INSTRUMENT_CNTSEM( WAIT, this, 0 ); 178 CYG_INSTRUMENT_CNTSEM( WAIT, this, 0 );
182 179
183 CYG_ASSERT( Cyg_Scheduler::get_sched_lock() == 1,
184 "Called with non-zero scheduler lock");
185 180
186 Cyg_Scheduler::unlock(); 181 Cyg_Scheduler::unlock();
187 182
188 // Clear the timeout. It is irrelevant whether the alarm has 183 // Clear the timeout. It is irrelevant whether the alarm has
189 // actually gone off or not. 184 // actually gone off or not.