Changeset 9c615b7 in rtems
- Timestamp:
- 01/04/16 08:55:59 (7 years ago)
- Branches:
- 4.11
- Children:
- cb7c6f5
- Parents:
- b4350d1
- git-author:
- Sebastian Huber <sebastian.huber@…> (01/04/16 08:55:59)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (01/05/16 06:09:56)
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
cpukit/score/src/watchdoginsert.c
rb4350d1 r9c615b7 23 23 static void _Watchdog_Insert_fixup( 24 24 Watchdog_Header *header, 25 Watchdog_Control *the_watchdog, 26 Watchdog_Interval delta, 25 27 Watchdog_Control *next_watchdog, 26 Watchdog_Interval delta 28 Watchdog_Interval delta_next 27 29 ) 28 30 { … … 30 32 Chain_Node *iterator_node; 31 33 32 next_watchdog->delta_interval -=delta;34 next_watchdog->delta_interval = delta_next - delta; 33 35 34 36 iterator_node = _Chain_First( &header->Iterators ); … … 41 43 42 44 if ( iterator->current == &next_watchdog->Node ) { 43 iterator-> delta_interval -= delta;45 iterator->current = &the_watchdog->Node; 44 46 } 45 47 … … 77 79 78 80 if ( delta < delta_next ) { 79 _Watchdog_Insert_fixup( header, next_watchdog, delta ); 81 _Watchdog_Insert_fixup( 82 header, 83 the_watchdog, 84 delta, 85 next_watchdog, 86 delta_next 87 ); 80 88 break; 81 89 } -
testsuites/sptests/spwatchdog/init.c
rb4350d1 r9c615b7 132 132 d->initial = 3; 133 133 _Watchdog_Insert( &header, d ); 134 rtems_test_assert( i.delta_interval == 1);135 rtems_test_assert( i.current == & b->Node );134 rtems_test_assert( i.delta_interval == 2 ); 135 rtems_test_assert( i.current == &d->Node ); 136 136 137 137 destroy_watchdogs( &header ); … … 193 193 rtems_test_assert( a->delta_interval == 2 ); 194 194 rtems_test_assert( c->delta_interval == 4 ); 195 rtems_test_assert( i.delta_interval == 4 ); 196 rtems_test_assert( i.current == &a->Node ); 195 rtems_test_assert( i.delta_interval == 8 ); 196 rtems_test_assert( i.current == &c->Node ); 197 198 destroy_watchdogs( &header ); 199 } 200 201 static void init_watchdogs_insert_with_iterator( 202 Watchdog_Header *header, 203 Watchdog_Control watchdogs[2] 204 ) 205 { 206 Watchdog_Control *a = &watchdogs[0]; 207 Watchdog_Control *b = &watchdogs[1]; 208 209 _Watchdog_Preinitialize( a ); 210 _Watchdog_Preinitialize( b ); 211 212 _Watchdog_Header_initialize( header ); 213 214 a->initial = 6; 215 _Watchdog_Insert( header, a ); 216 rtems_test_assert( a->delta_interval == 6 ); 217 } 218 219 static void test_watchdog_insert_with_iterator( void ) 220 { 221 Watchdog_Header header; 222 Watchdog_Control watchdogs[2]; 223 Watchdog_Control *a = &watchdogs[0]; 224 Watchdog_Control *b = &watchdogs[1]; 225 Watchdog_Iterator i; 226 227 init_watchdogs_insert_with_iterator( &header, watchdogs ); 228 add_iterator( &header, &i, a ); 229 230 b->initial = 4; 231 _Watchdog_Insert( &header, b ); 232 rtems_test_assert( a->delta_interval == 2 ); 233 rtems_test_assert( b->delta_interval == 4 ); 234 rtems_test_assert( i.delta_interval == 2 ); 235 rtems_test_assert( i.current == &b->Node ); 197 236 198 237 destroy_watchdogs( &header ); … … 237 276 test_watchdog_insert_and_remove(); 238 277 test_watchdog_remove_second_and_insert_first(); 278 test_watchdog_insert_with_iterator(); 239 279 240 280 build_time( &time, 12, 31, 1988, 9, 0, 0, 0 );
Note: See TracChangeset
for help on using the changeset viewer.