注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

dp: 生活的脚步,进步的点滴...

Cam、DSP、FPGA、PM、Life、More ...

 
 
 

日志

 
 

NDK SBNew: Buffer OOM错误  

2011-12-06 08:40:40|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
DM642上使用异常现象,建立一个TCP监听端口,当向这个tcp端口连接时失败,DM642程序在CCS上提示的打印信息:
00008.106 SBNew: Buffer OOM
00008.681 SBNew: Buffer OOM
00009.298 SBNew: Buffer OOM

整个工程原先是可用,最近不知做什么修改才出现了这个问题,怀疑是NDK相关的库被修改了,查了一遍,无果。

还是得从打印信息出发,经查证,SBNew是一个内存分配函数,在stack.lib的sb.c文件里实现,SBNew: Buffer OOM就意味着内存分配不成功。

依据网络堆栈的思路调整了堆栈大小,最终把问题确定下来了,原来我们使用的socket buffer被修改得太大了,之前调试把buffer改成 0×100000,改回8704就ok了!

// Change our socket buffer size to 8704 bytes
rc =8704;//8760;// 0×100000;//
CfgAddEntry( hCfg, CFGTAG_IP, CFGITEM_IP_SOCKBUFMAX, CFG_ADDMODE_UNIQUE, sizeof(uint), (UINT8 *)&rc, 0 );

TI提供的DM642 NDK存在不少问题,使用时要十分小心!

================================================================================================
以上内容转自林祥杰博客。
 
使用c6455进行开方,使用ndk1.92版本。
堆栈修改为8096byte,然后需要在bios config 的memory里面将stack的容量修改为0x10000
能够有效避免这个问题。当然本人出现OOM问题是在非正常的拔掉网线的时候产生的。
正常情况下不会发生这个问题。

 

以上内容转自赤松子耶博客  weizhiheng99@yahoo.com.cn

  评论这张
 
阅读(530)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016