diff --git a/Drivers/BSP/NET/net_socket.c b/Drivers/BSP/NET/net_socket.c index dd2ad3d8..9163b797 100644 --- a/Drivers/BSP/NET/net_socket.c +++ b/Drivers/BSP/NET/net_socket.c @@ -1713,6 +1713,8 @@ static uint32_t s_relisten_settle_dead[NET_MAX_SOCKETS]; /* 隔离上限到期 * 函数说明:1. 中止/异常断开时芯片 RX 缓冲可能残留上一条连接的数据(实测残留约一个缓冲 = 2048B) * 2. 残渣带入下一条连接会使其在约 2KB 处被芯片拆链(上传被静默截断) * 3. 关闭前主动读空即清除;分块读避免新增静态缓冲 + * (2026-10-09 实测:ARMCC 把本 scratch 与同函数内生命周期不重叠的 + * 192B 日志缓冲叠放,局部缓冲边际栈成本仅 ~16B,静态化反亏 256B BSS,勿再"优化") */ static void net_drain_chip_rx(int sockfd) { /* 复用分块缓冲(256B/块,避免新增静态缓冲) */