Successful rtems_region_get_segment() returning NULL pointer ?

Rolf Schroedter Rolf.Schroedter at web.de
Sat Sep 18 19:14:31 UTC 2004


Found a workaround for the described problem:
With the following construct my application runs for several hours:

> for(;;) {
>     stat=rtems_region_get_segment(idRegion,size, \
>                  RTEMS_NO_WAIT,RTEMS_NO_TIMEOUT,&ptr);
>     if (stat == RTEMS_SUCCESSFUL) break;
>     rtems_task_wake_after(10);
> }

The following two constructs are occasionally stopping the task calling
rtems_region_return_segment() when the region is full.
>     stat=rtems_region_get_segment(idRegion,size, \
>                    RTEMS_WAIT,RTEMS_NO_TIMEOUT,&ptr);
or
> for(;;) {
>     stat=rtems_region_get_segment(idRegion,size,RTEMS_WAIT,10,&ptr);
>     if (stat == RTEMS_SUCCESSFUL) break;
> }

Really strange ...
I'm using RTEMS 4.6.0pre4, provided with the Leon-Sparc leccs1.2.2
development system.

Regards,
Rolf.
-- 
Rolf Schrödter
Tongrubenweg 106
D-12559 Berlin
Phone/Fax: +49 30 659 7127/41311
Mobile: +49 177 659 7127



More information about the users mailing list