Register the CF configuration table as dump-only
@dmknutsen ci sta già lavorando.
Dal 27/4/2023.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Describe the bug
This is based on testing for the PACE mission.
In cf_app.c function CF_CheckForTblRequests blocks attempts to do updates to the configuration table. However, the configuration table is registered as CFE_TBL_OPT_LOAD_DUMP in CF_TableInit. An operator can execute load, validate and activate cmds as normally expected for a loadable table, but the activation request results in a load attempt that must be aborted.
Seems it would make more sense to register it as CFE_TBL_OPT_DUMP_ONLY
Aside from blocking the update attempt, this CF_CheckForTblRequests function appears to be in place in case "gnd may be trying to get the checksum of the table" - then it executes the table validation function.
But the table checksum can be obtained by using the tbl.tlm_reg command.
To Reproduce
Steps to reproduce the behavior:
- Dump the CF configuration table to ram
- Load, validate and activate the table using the dumped file.
- You should see these messages at the end:
INFO DLEON CFE_TBL 36: CF validation successful for Inactive 'CF.ConfigTable'
ERROR DLEON CF 151: CF Config Tbl cannot be updated! Load attempt must be aborted!
Expected behavior
Since the CF configuration table shows up in the table registry as "FALSE" for the DUMP ONLY flag, I expected it could be loaded.
Code snips
In cf_app.c,
function CF_TableInit
/* Register The CF Config Table /
Status = CFE_TBL_Register (&CF_AppData.ConfigTableHandle,
CF_CONFIG_TABLE_NAME,
sizeof (cf_config_table_t) ,
CFE_TBL_OPT_SNGL_BUFFER | CFE_TBL_OPT_LOAD_DUMP,
CF_ValidateCFConfigTable);
function CF_CheckForTblRequests
/ if gnd is trying to do a tbl load */
else if (Status == CFE_TBL_INFO_UPDATE_PENDING)
{
CFE_EVS_SendEvent(CF_TBL_LD_ATTEMPT_EID, CFE_EVS_ERROR,
"CF Config Tbl cannot be updated! Load attempt must be aborted!");
}
System observed on:
- PACE DLEON processor
- OS: VxWorks 6.9
- Versions
-
- cFE 6.6.05
-
- CF 2.2.1.4
Additional context
None
Reporter Info
Michael Lambertson Goddard Space Flight Center Code 582 / Vantage Systems, Inc.
- Lingua principale
- C
- Stelle
- 122
- Fork
- 79
- Merge medio
- 1g 15h
- PR unite (30g)
- 4
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di nasa/CF
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Assert checks non-existent variable (`pt`) in `CF_CFDP_ProcessPlaybackDirectory()`Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertainvalid
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
-
Transaction priority sorted incorrectlyForse già presa @dmknutsen l’ha presa 894 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
CF_Chunks_Insert drops all data after the chunk list fills, so a lossy Class 2 upload is mostly resentForse già presa @SpaceOceanCorp l’ha presa oggi. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
Issue simili
-
Memory leak: "Add to Playlist" (`CMD_EVENT_ADD_TO_PLAYLIST`) never frees the playlist it loadsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Signed/unsigned mix in the EOCD backward scan rejects valid archives with a 65535-byte commentAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
OpenXiangShan/NEMU#1287 ·
I maintainer di solito rispondono entro 1 giorno
-
area: recompiler area: runtime kind: bug preview-effort: small priority: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno