remalloc异常,抛出SIGSEGV、SIGABRT等信号

aili_quan 2016-05-27 02:00:59






从中可以看出原地址空间是存在的,item.peerlist.naddrs大小是134(10进制),超过0x111,
入参并没问题,glibc触发SIGSEGV信号,不正常吧? 最多也就SIGTERM信号,求高手指点。
...全文
268 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2016-05-27
  • 打赏
  • 举报
回复
小心驶得万年船。
cocoabird 2016-05-27
  • 打赏
  • 举报
回复
越界访问导致出错
赵4老师 2016-05-27
  • 打赏
  • 举报
回复
多线程读/写或malloc、realloc、free竞争资源需要加锁。
aili_quan 2016-05-27
  • 打赏
  • 举报
回复
我自己先抛一种情况: 当发生内存越界操作,导致这块内存临接的下一块内存被篡改(下块内存头长度信息被覆盖),此时进行remalloc时就会触发异常(具体处理方式与内核有关),如SIGSEGV。 但是我这次并没有越界操作。唯一我能知道的异常方式是:该内存已经被我释放,对野指针进行remalloc触发了SIGSEGV,因为该对象确实存在并发操作,有被删除的可能,而且没做资源保护。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧