mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-05 15:15:44 +00:00
2006-10-30 Joel Sherrill <joel@OARcorp.com>
PR 841/rtems * psxsem01/init.c: Make sem_timedwait more conformant to Open Group specification.
This commit is contained in:
@@ -1,3 +1,9 @@
|
|||||||
|
2006-10-30 Joel Sherrill <joel@OARcorp.com>
|
||||||
|
|
||||||
|
PR 841/rtems
|
||||||
|
* psxsem01/init.c: Make sem_timedwait more conformant to Open Group
|
||||||
|
specification.
|
||||||
|
|
||||||
2006-10-19 Ralf Corsépius <ralf.corsepius@rtems.org>
|
2006-10-19 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||||
|
|
||||||
* configure.ac: Require automake-1.10. Require autoconf-2.60.
|
* configure.ac: Require automake-1.10. Require autoconf-2.60.
|
||||||
|
|||||||
@@ -89,6 +89,9 @@ void *POSIX_Init(
|
|||||||
fatal_posix_service_status( status, -1, "sem_trywait error return status");
|
fatal_posix_service_status( status, -1, "sem_trywait error return status");
|
||||||
fatal_posix_service_status( errno, EINVAL, "sem_trywait errno EINVAL");
|
fatal_posix_service_status( errno, EINVAL, "sem_trywait errno EINVAL");
|
||||||
|
|
||||||
|
status = sem_post(&sems[2]);
|
||||||
|
fatal_posix_service_status( status, 0, "sem_post semaphore 2");
|
||||||
|
|
||||||
puts( "Init: sem_timedwait - SUCCESSFUL" );
|
puts( "Init: sem_timedwait - SUCCESSFUL" );
|
||||||
waittime.tv_sec = 0;
|
waittime.tv_sec = 0;
|
||||||
waittime.tv_nsec = 100;
|
waittime.tv_nsec = 100;
|
||||||
@@ -96,12 +99,14 @@ void *POSIX_Init(
|
|||||||
fatal_posix_service_status( status, 0, "sem_timedwait semaphore 2");
|
fatal_posix_service_status( status, 0, "sem_timedwait semaphore 2");
|
||||||
|
|
||||||
puts( "Init: sem_timedwait - UNSUCCESSFUL (ETIMEDOUT)" );
|
puts( "Init: sem_timedwait - UNSUCCESSFUL (ETIMEDOUT)" );
|
||||||
status = sem_timedwait(&sems[1], &waittime);
|
status = sem_timedwait(&sems[2], &waittime);
|
||||||
fatal_posix_service_status( status, -1, "sem_timedwait error return status");
|
fatal_posix_service_status( status, -1, "sem_timedwait error return status");
|
||||||
fatal_posix_service_status( errno, ETIMEDOUT, "sem_timedwait errno ETIMEDOUT");
|
fatal_posix_service_status( errno, ETIMEDOUT, "sem_timedwait errno ETIMEDOUT");
|
||||||
|
|
||||||
puts( "Init: sem_timedwait - UNSUCCESSFUL (EINVAL)" );
|
puts( "Init: sem_timedwait - UNSUCCESSFUL (EINVAL)" );
|
||||||
status = sem_timedwait(&sem2, &waittime);
|
waittime.tv_sec = 0;
|
||||||
|
waittime.tv_nsec = 0x40000000;
|
||||||
|
status = sem_timedwait(&sems[2], &waittime);
|
||||||
fatal_posix_service_status( status, -1, "sem_timedwait error return status");
|
fatal_posix_service_status( status, -1, "sem_timedwait error return status");
|
||||||
fatal_posix_service_status( errno, EINVAL, "sem_init errno EINVAL");
|
fatal_posix_service_status( errno, EINVAL, "sem_init errno EINVAL");
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user