FTL复位丢失修复:journal epoch 锚定最新 checkpoint(根治重格式化循环)+ checkpoint 诊断
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#include "usart.h"
|
||||
#include "ff.h"
|
||||
#include "gd5f2gq5ue.h"
|
||||
#include "nand_ftl.h"
|
||||
#include "lftpd.h"
|
||||
#include "../test/ch395f_test_task.h"
|
||||
#include "../test/ch395f_test.h" /* ENABLE_NET_LAYER_TESTS:netTask 条件创建 */
|
||||
@@ -262,6 +263,7 @@ void StartDefaultTask(void *argument)
|
||||
FS_VOL_PROBE(hfr);
|
||||
if (hfr != FR_OK) {
|
||||
FS_VOL_PROBE(hfr); /* 两击确认 */
|
||||
nand_ftl_scan_checks(); /* 诊断:环上 checkpoint 的 epoch 分布 */
|
||||
}
|
||||
if (hfr != FR_OK) {
|
||||
if (hfr == FR_DENIED || hfr == FR_INVALID_OBJECT ||
|
||||
@@ -278,6 +280,8 @@ void StartDefaultTask(void *argument)
|
||||
fr = f_mount(&default_fatfs, "", 1);
|
||||
}
|
||||
}
|
||||
nand_ftl_log_state("[after-mkfs]");
|
||||
nand_ftl_log_state("[after-mkfs]");
|
||||
if (fr == FR_OK) {
|
||||
DBG_INFO("[FS] volume reformatted OK");
|
||||
} else {
|
||||
@@ -295,6 +299,7 @@ void StartDefaultTask(void *argument)
|
||||
#undef FS_VOL_PROBE
|
||||
if (fr == FR_OK) {
|
||||
DBG_INFO("[FS] FATFS mounted");
|
||||
nand_ftl_log_state("[probe-ok]");
|
||||
/* 日志引擎挂载后处理:建 /log 目录 + 写"上电/重启"分类记录(唯一写者) */
|
||||
syslog_mcu_mounted();
|
||||
/* 加载网络配置进 RAM 副本(配置引擎属主 = 本任务;首启含旧档迁移;
|
||||
|
||||
Reference in New Issue
Block a user