自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(9)
  • 资源 (3)
  • 收藏
  • 关注

原创 userspace-rcu的调试定位方法

urcu(userspace-rcu),顾名思义就是用户态的rcu实现库。通过urcu可以实现reader无锁,大大提高程序性能。使用相对比较简单,但是使用不当也会造成各种crash问题。下面是我在使用中的一些总结。1. 开启urcu的debug功能刚开始调试时,我们希望问题尽早暴露出来并修复。建议使用开启debug功能的urcu lib库,待调试OK后,再使用关闭debug功能的urcu ...

2020-03-28 20:14:09 1163

原创 内存泄漏定位思路和方法

本文主要针对基于Linux操作系统,提供了一种通用的内存泄漏定位分析思路和方法。1. 查看内存概况[root@VM_0_17_centos ~]# free total used free shared buff/cache availableMem: 1883844 376664 7...

2020-03-27 22:55:10 6328 4

原创 [内存泄漏]zebra进程导致的隐形内存占用过高

这次问题源于线上设备发现内存使用过高,触发告警。技术支持报告后,登陆设备查看,发现系统内存占用(超过3.2G),导致可用内存只剩100多M。[root@ ~]# free total used free shared buff/cache availableMem: 3788284 3342156 ...

2020-03-26 19:18:08 1428

原创 [crash分析]因为HOOK okfn导致的NULL pointer dereference

设备启用业务模块,同时又创建了桥口转发docker业务。在调试过程中,出现crash。[ 794.020484] BUG: unable to handle kernel[ 794.022499] NULL pointer dereference at 0000000000000006[ 794.024455] IP: [<ffffffffa0330ee3>] br_nf_...

2020-03-25 10:54:16 637

原创 [dead loop][mac os]clang编译优化导致程序死循环问题

mac客户端之前调试都运行正常,最近正是编译后,运行正常,但是无法停止。经过定位(此种曲折),发现是一个while ((c = a - b) <= 0) {} 逻辑进入死循环。那为什么调试的时候正常呢,是因为编()...

2020-03-13 12:48:28 571 1

原创 [crash分析][arm]应用程序Segmentation fault

定制业务程序prog,在客户设备上运行后出现Segmentation fault。

2020-03-07 22:29:22 818

原创 [crash分析][mips]CPU 0 Unable to handle kernel paging request at virtual address之2

openwrt定制低端设备,加载业务模块后很快就crash,之前帖子说过配置太低,所以系统异常crash后无法保存coredump,只有串口记录crash log供分析定位。crash log如下:[ 39.985393] CPU 0 Unable to handle kernel paging request at virtual address 78ddc304, epc == 802...

2020-03-03 14:21:39 1356

原创 [mac os]程序调用urcu库函数导致crash问题分析

产品运行在mac os上,使用了userspace-rcu库来提高性能。但是在运行中总是会出现crash,crash位置是urcu函数调用内部。userspace-rcu要求每个会使用urcu API的线程都要在开始时调用 register urcu thread API,结束时调用 unregister urcu thread。大多数异常情况是没有按照这个要求编码导致的。1. 检查是否有线程...

2020-03-01 17:30:11 409

原创 [windows]可执行程序异常时生成dmp文件的配置和调试方法

正常情况下,可执行程序异常退出后不会生成dmp文件,这给定位分析问题原因带来了极大的困难。通过修改注册表我们可以让程序生成dmp文件,配合windbg工具的使用,可以方便的帮助定位异常问题原因。1. 注册表修改操作HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting1.1 创建LocalDumps注册表项...

2020-03-01 13:13:44 3449 3

memory-diganose-0.03.gz

适合IT、技术支持、运维人员以及其他会遭遇到linux系统内存消耗过高或内存泄漏问题的人员。解压后直接运行脚本,迅速定位问题原因。 更新到0.03版本

2021-03-22

深入浅出mfc

VC++ MFC 开发经典著作 台湾侯捷著

2011-10-20

LoadRunner函数大全之中文解释

LoadRunner 函数大全之中文解释

2011-03-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除