阅读:3025回复:0
cache问题请教
小弟在把Tornado2.0移植到Tornado2.2,cpu是mips32334,有个问题是:
使用cacheDmaMalloc( )函数申请一块uncahced内存空间,释放不了,用cacheDmaFree( ) 释放时会有异常,在shell下会使shell死掉。请各位大侠位小弟指点迷津,不胜感激!请问是我对cpu寄存器没有设置好,还是有什么宏没有真确定义? 这是在shell下拷贝的,不能申请大空间,申请小空间可以,但是第三此申请后释放时shell死机,而且申请之后释放,再申请给的不是上次给的地址: NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY ---------- ------------ -------- --- ---------- -------- -------- ------- ----- tfeeddog FeedDog 83fdaf40 0 DELAY 801a0a40 83fdaeb8 0 57 tExcTask excTask 83fd93f0 0 PEND 801a6c80 83fd92d0 0 0 tLogTask logTask 83fd6860 0 PEND 801a6c80 83fd6748 0 0 tWdbTask wdbTask 83d3e2e0 3 READY 8011914c 83d3e1d0 0 0 tNetTask netTask 83f985a0 50 READY 80118fa8 83f983c8 0 0 tLED RunLED 83d3c070 190 DELAY 801a0a40 83d3bfd0 0 38 value = 0 = 0x0 -> cacheDmaMalloc(0x100) value = -1543637024 = 0xa3fdf7e0 -> cacheDmaFree(0xa3fdf7e0) value = 0 = 0x0 -> cacheDmaMalloc(0x100) value = -1543637376 = 0xa3fdf680 -> cacheDmaFree(0xa3fdf680) value = 0 = 0x0 -> cacheDmaMalloc(0x100) value = -1543637728 = 0xa3fdf520 -> cacheDmaFree(0xa3fdf520) 在串口打印异常信息是: 0x83d3b5f0 (t6): memPartFree: invalid block 0x8013d8f8 in partition 0x801c1b80. |
|
|