错误 #4383
core2 PDU合入的版本,自同步模式下core3和core2的DM空间冲突
由 高 峰 在 3 个月 之前添加.
更新于 2 个月 之前.
描述
外同步模式下,没有出现core2 DM空间冲突问题;
自同步模式下,core2和core3 的DM空间存在冲突,导致free和dmalloc的失败
文件
历史记录
DM分配失败的定位思路
1.son sniffer 任务入口和出口,增加free和allac 统计比对
2.检查DM踩尾
3.时序并行冲突检测,使用信号量(DDR)
4.DM分配机制原理
- 主题 从 core2 PDU合入的版本,core3和core2的DM空间冲突 变更为 core2 PDU合入的版本,自同步模式下core3和core2的DM空间冲突
【2025.11.6】
1. 统计freq move,sniffer,dlsync等3个任务出入口getMemoryMalloced和getFreeSpace值,getMemoryMalloced值均为0,getFreeSpace时,sniffer 入口的dm7值不等于出口dm7值,统计详见附件。
2. 在各任务中加信号量,查看多任务是否有冲突,dl sync没有运行完毕,需要继续查看原因;
3. sniffer踩尾测试:主节点有踩尾,从节点没有踩尾
发现只要不启动PDS任务,dl sync就可以正常工作;
所以怀疑的影响链条是: 小区搜索任务 -> core2 PDS 任务 -> dl sync任务
结合之前小区搜索DM没有出现释放异常的情况;所以怀疑DDR踩踏了
马风波经过排查发现确实DDR存在踩踏情况:
1.Freq mov DDR 上采样地址与PDC、PDS地址有冲突;
2.缘由分析是: DDR上采用之前保留40ms数据使用48M,后来修改为80ms后数据使用80M+,没有更新DDR地址空间代码描述和文档描述。这导致core2 PDC、PDS选择DDR地址与Freq mov DDR冲突
导出 Atom
PDF