Files
rtems/c
Joel Sherrill f94e76ba02 Fix after this report from Peter Pointner <pr@schenk.isar.de>:
Problem: a posix thread which is created by

      pthread_attr_init(&tattr);
      pthread_attr_setinheritsched(&tattr, PTHREAD_EXPLICIT_SCHED);
      pthread_attr_setschedpolicy(&tattr, SCHED_RR);
      pthread_create(&th, &tattr, func, arg);

    has a first timeslice of 2^32 ticks (changing a running thread to
    SCHED_RR id ok).

    I use RTEMS-4.0.0. I am not sure if the problem exists in the current CVS
    head revision. If it's not fixed, the patch at the end should do it.

Peter


--- pthreadcreate.c.orig        Wed Jul 28 14:45:58 1999
+++ pthreadcreate.c     Wed Jul 28 15:06:09 1999
@@ -199,6 +199,10 @@
   api->schedpolicy = schedpolicy;
   api->schedparam  = schedparam;

+  if ( schedpolicy == SCHED_RR ) {
+    the_thread->cpu_time_budget = _Thread_Ticks_per_timeslice;
+  }
+
   /*
    *  This insures we evaluate the process-wide signals pending when we
    *  first run.
1999-07-28 18:03:20 +00:00
..
1999-07-03 16:08:21 +00:00

#
#  $Id$
#

This is the top level of the RTEMS directory structure.  The following
is a description of the files and directories in this directory:

  Makefile.in
    The top-level Make command file used to build the C implementation
    of RTEMS.  [RTEMS assumes the use of GNU make.]

  README
    This file.

  REQUIRES
    A list of the other tools which are assumed to be installed
    before RTEMS is built.

  SUPPORT
    Information on third-party support for RTEMS.

  build-tools
    This directory contains the source for various utilities
    needed to build RTEMS.

  make
    Make command files "included" from those in the source distribution.
    [RTEMS assumes the use of GNU make.]

  patches
    This directory contains patches for this release of RTEMS.

  src
    This directory contains the source code for the C
    implementation of RTEMS as well as the test suites, sample
    applications, Board Support Packages, Device Drivers, and
    support libraries.