Changeset f48c9068 in rtems


Ignore:
Timestamp:
08/13/96 14:24:00 (27 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
85f5b4ab
Parents:
aac34f7b
Message:

removed errors for TOD not set yet.

made nanosleep return -1/EINTR for being interrupted for a signal.

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • c/src/exec/posix/src/time.c

    raac34f7b rf48c9068  
    172172
    173173    case CLOCK_REALTIME:
    174 #if 0
    175       if ( !_TOD_Is_set() )    /* XXX does posix allow it to not be set? */
    176         set_errno_and_return_minus_one( EINVAL );
    177 #endif
    178174 
    179175      _ISR_Disable( level );
     
    267263    set_errno_and_return_minus_one( EINVAL );
    268264 
    269 /* XXX this is interruptible by a posix signal */
    270 
    271265  ticks = _POSIX_Timespec_to_interval( rqtp );
    272266
     
    293287    _Watchdog_Initialize(
    294288      &_Thread_Executing->Timer,
    295       _Thread_Delay_ended,          /* XXX may need to be POSIX specific */
     289      _Thread_Delay_ended,
    296290      _Thread_Executing->Object.id,
    297291      NULL
     
    307301
    308302    _POSIX_Interval_to_timespec( ticks, rmtp );
    309   }
    310 
    311   return 0;                    /* XXX should account for signal */
    312 
     303
     304    /*
     305     *  If there is time remaining, then we were interrupted by a signal.
     306     */
     307
     308    if ( ticks )
     309      set_errno_and_return_minus_one( EINTR );
     310  }
     311
     312  return 0;
    313313}
    314314
  • cpukit/posix/src/time.c

    raac34f7b rf48c9068  
    172172
    173173    case CLOCK_REALTIME:
    174 #if 0
    175       if ( !_TOD_Is_set() )    /* XXX does posix allow it to not be set? */
    176         set_errno_and_return_minus_one( EINVAL );
    177 #endif
    178174 
    179175      _ISR_Disable( level );
     
    267263    set_errno_and_return_minus_one( EINVAL );
    268264 
    269 /* XXX this is interruptible by a posix signal */
    270 
    271265  ticks = _POSIX_Timespec_to_interval( rqtp );
    272266
     
    293287    _Watchdog_Initialize(
    294288      &_Thread_Executing->Timer,
    295       _Thread_Delay_ended,          /* XXX may need to be POSIX specific */
     289      _Thread_Delay_ended,
    296290      _Thread_Executing->Object.id,
    297291      NULL
     
    307301
    308302    _POSIX_Interval_to_timespec( ticks, rmtp );
    309   }
    310 
    311   return 0;                    /* XXX should account for signal */
    312 
     303
     304    /*
     305     *  If there is time remaining, then we were interrupted by a signal.
     306     */
     307
     308    if ( ticks )
     309      set_errno_and_return_minus_one( EINTR );
     310  }
     311
     312  return 0;
    313313}
    314314
Note: See TracChangeset for help on using the changeset viewer.