Creation of initial task fails with RTEMS_UNSATISFIED

Ingolf Steinbach Ingolf.Steinbach at jena-optronik.de
Tue Aug 22 08:23:40 UTC 2006


Hi,

in my application, the creation of the initial task
(rtems_task_create() within _RTEMS_task_Initialize_user_tasks()
in cpukit/rtems/src/taskinitusers.c) fails with error
RTEMS_UNSATISFIED.

What configuration needs to be modified in order to
avoid the error?

A bit of additional information:

RTEMS configuration:
#include <rtems.h>
#define CONFIGURE_INIT
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_INIT_TASK_ENTRY_POINT InitBoot
#define CONFIGURE_MAXIMUM_TASKS       1
#define CONFIGURE_MAXIMUM_TIMERS     1
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_INIT_TASK_ATTRIBUTES (RTEMS_DEFAULT_ATTRIBUTES | 
RTEMS_FLOATING_POINT)
#include <confdefs.h>



GDB trace:
(gdb) where
#0  0x400054f8 in _Internal_error_Occurred (the_source=4064288736,
     is_internal=1, the_error=13)
     at /opt/rtems-4.6/src/rtems/cpukit/score/src/interr.c:57
#1  0x4000dd40 in _RTEMS_tasks_Initialize_user_tasks ()
     at /opt/rtems-4.6/src/rtems/cpukit/rtems/src/taskinitusers.c:72
#2  0x4000a9cc in _API_extensions_Run_postdriver ()
     at /opt/rtems-4.6/src/rtems/cpukit/score/src/apiext.c:79
#3  0x40005390 in rtems_initialize_executive_early (
     configuration_table=0x4001a7dc, cpu_table=0x4001a7b4)
     at /opt/rtems-4.6/src/rtems/cpukit/sapi/src/exinit.c:280
#4  0x40003740 in boot_card (argc=0, argv=0x0, envp=0x0)
     at 
./../../../../../../../../rtems-4.6.1/c/src/lib/libbsp/shared/bootcard.c:115
#5  0x400010dc in zerobss ()

(gdb) print BSP_Configuration
$1 = {work_space_start = 0x40078e40, work_space_size = 28672,
   maximum_extensions = 1, microseconds_per_tick = 500,
   ticks_per_timeslice = 50, maximum_devices = 20, maximum_drivers = 1,
   number_of_device_drivers = 1, Device_driver_table = 0x40018af4,
   number_of_initial_extensions = 0, User_extension_table = 0x0,
   User_multiprocessing_table = 0x0, RTEMS_api_configuration = 0x4001a788,
   POSIX_api_configuration = 0x4001a760, ITRON_api_configuration = 0x0}

(gdb) print maximum
$2 = 1

(gdb) print user_tasks[0]
$6 = {name = 1430860064, stack_size = 4096, initial_priority = 1,
   attribute_set = 1, entry_point = 0x400011f4 <InitBoot>, mode_set = 256,
   argument = 0}

I have 512kB of RAM at location 0x40000000. The "end" symbol
is at 0x4001b268.


This is on RTEMS-4.6.5 on leon2.

Cheers
     Ingolf



More information about the users mailing list