nasa / cFE

The Core Flight System (cFS) Core Flight Executive (cFE)
Apache License 2.0
408 stars 201 forks source link

CFE_ES_CopyModuleAddressInfo not working #1249

Closed zanzaben closed 3 years ago

zanzaben commented 3 years ago

Describe the bug When getting the app info, the AddressesAreValid is false. That field is set by CopyModuleAddressInfo when it's Return code is not OS_SUCCESS.

To Reproduce Steps to reproduce the behavior: Call CFE_ES_GetAppInfo See that AddressesAreValid are set to false.

Expected behavior It shouldn't be setting them to false.

System observed on: Ubuntu 20.04

Additional context When called on an external app the return code is successful but AddressesAreValid is still 0. When called on a core app the return code it -16 Invalid ID

Reporter Info Alex Campbell GSFC

jphickey commented 3 years ago

Note that not all operating systems allow OSAL to get address info of modules. VxWorks allows it but POSIX does not have a standard interface to get this info. This is why the OSAL function OS_ModuleInfo() returns success - all the other info in the returned structure is valid, but the address info is not - because there is no way to get the info.

This sounds like correct behavior when running on Ubuntu/Linux. When you run on VxWorks the AddressesAreValid flag should be true.

skliper commented 3 years ago

Sounds like the test should do a NA if the AddressesAreValid == false and skip non-zero checks, otherwise do the non-zero checks.

zanzaben commented 3 years ago

After discussing with @jphickey this is all working as intended.