Closed pepepr08 closed 2 years ago
Sounds to me like you've encountered a platform that requires floating point to be enabled for all tasks, regardless of if the task requires floating point support. In this case for portability it should be added from the PSP, not from cFE.
For VxWorks this was accomplished via OS_BSP_GetResourceTypeConfig
and the OS_OBJECT_TYPE_OS_TASK
key. Could probably do the same for RTEMS.
Closing this since there's no plan to add the floating point flag for all tasks to fix this bug at the system level. Systems that rely on it can do it from the PSP.
Describe the bug Some functional tests create tasks without using the
OS_FP_ENABLED
flag. Depending on the platform they are running, the spawned tasks might require floating points to be enabled for the task, otherwise we get an exception.Code snips These two tests don't use OS_FP_ENABLED to create a task: https://github.com/nasa/cFE/blob/c161cf04fe7c5fd2f2a533ac1d7522b31191eab6/modules/cfe_testcase/src/es_task_test.c#L159-L162
https://github.com/nasa/cFE/blob/c161cf04fe7c5fd2f2a533ac1d7522b31191eab6/modules/cfe_testcase/src/tbl_registration_test.c#L245-L248
Possible fix is to add OS_FP_ENABLED to the function call.
es_task_test.c:
tbl_registration_test.c:
System observed on:
Reporter Info Jose F. Martinez Pedraza / NASA GSFC