修复就绪屏障位被消费致FTP永不监听;新增栈可观测(水位探针+静态调用图报告)并补FTP实测
This commit is contained in:
+2
-1
@@ -173,8 +173,9 @@ void net_task_func(void const *arg) {
|
||||
/* 配置在 NAND 的 FatFS 卷上:等存储就绪再读(取代原 2s 魔法延时);
|
||||
* 超时(存储异常)继续以工厂默认组网,不卡网络启动 */
|
||||
if (sys_evtHandle != NULL) {
|
||||
/* osFlagsNoClear:就绪位是状态,不能被本任务消费(ftpTask 等仍要 WaitAll 两位) */
|
||||
(void)osEventFlagsWait(sys_evtHandle, SYS_EVT_STORAGE_READY,
|
||||
osFlagsWaitAny, 10000u);
|
||||
osFlagsWaitAny | osFlagsNoClear, 10000u);
|
||||
}
|
||||
|
||||
if (net_stack_bring_up() != 0) {
|
||||
|
||||
+2
-1
@@ -44,8 +44,9 @@ static void ui_task_time_cb(char *buf, size_t len) {
|
||||
*/
|
||||
static void ui_task_wait_net_ready(void) {
|
||||
if (sys_evtHandle != NULL) {
|
||||
/* osFlagsNoClear:就绪位是状态,不能被本任务消费掉(否则其它等待者永不唤醒) */
|
||||
osEventFlagsWait(sys_evtHandle, SYS_EVT_NET_READY,
|
||||
osFlagsWaitAny, osWaitForever);
|
||||
osFlagsWaitAny | osFlagsNoClear, osWaitForever);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-2
@@ -107,10 +107,11 @@ static void time_sync_handle_conn(int conn_sock) {
|
||||
void time_sync_task(void *argument) {
|
||||
(void)argument;
|
||||
|
||||
/* 等网络栈真正就绪(取代拍脑袋的 8s 魔法延时),确保 netTask 已开始处理消息 */
|
||||
/* 等网络栈真正就绪(取代拍脑袋的 8s 魔法延时),确保 netTask 已开始处理消息;
|
||||
* osFlagsNoClear:就绪位是状态,不能被本任务消费掉(否则其它等待者永不唤醒) */
|
||||
if (sys_evtHandle != NULL) {
|
||||
(void)osEventFlagsWait(sys_evtHandle, SYS_EVT_NET_READY,
|
||||
osFlagsWaitAny, osWaitForever);
|
||||
osFlagsWaitAny | osFlagsNoClear, osWaitForever);
|
||||
}
|
||||
|
||||
for (;;) {
|
||||
|
||||
Reference in New Issue
Block a user