首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何快速定位 Linux Panic 出错的代码

问题描述 内核调试中最常见的一个问题是:内核Panic后,如何快速定位出错的代码? 就是这样一个常见的问题,面试过的大部分同学都未能很好地回答,这里希望能够做很彻底地解答。...那么有了地址以后,就可以定位该地址落在哪个函数的区间内,然后找到该函数,进而通过计算偏移,定位代码。...先通过函数名定位所在函数,然后通过偏移定位代码。 相应的工具有addr2line, gdb, objdump等,这几个工具在How to read a Linux kernel panic?...所以如果要调试代码,必须确保调试符号已经编译内核中,不然,回调里头打印的是一堆地址,根本看不到符号,那么对于上面提到的情况二而言,将无法准确定位问题。...addr2line 如果出错的内核跟当前需要调试的内核一致,而且编译器等都一致,那么可以通过addr2line直接获取到出错的代码,假设出错地址为0019594c: $ addr2line -e vmlinux_with_debug_info

50740
您找到你想要的搜索结果了吗?
是的
没有找到

36.Linux驱动调试-根据oops定位错误代码

(PS:若不配置,也可以直接通过栈来分析函数调用过程,在下章会分析:http://www.cnblogs.com/lifexy/p/8011966.html) 2.2而有些内核的环境不同,opps也可能不会打印出上面的...kallsyms.txt里,找到pc值bf000078位于26th_segmentfault驱动里first_drv_open()函数下的bf000000+0x78中 2.5然后将驱动生成反汇编: arm-linux-objdump...而0x56000050是个物理地址,在linux眼中便是个非法地址,所以出错 并找到出错地方位于first_drv_open ()函数下: 3.若发生错误的驱动位于内核的地址值时 3.1还是以26th_segmentfault.c...为例,首先加入内核: #cp 26th_segmentfault.c /linux-2.6.22.6/drivers/char/ //将有问题的驱动复制字符驱动目录下 #vi Makefile...                            //y:将该驱动放入内核中 3.2然后make uImage装载新内核后,再运行测试程序,便会打印出opps信息 3.3在内核源码的根目录下通过: # arm-none-linux-gnueabi-objdump

2.6K80

Android仿微信朋友圈点击评论自动定位相关功能

最近闲来无事,随便看看各种UI实现的代码 本文涉及的相关代码已经上传到 https://github.com/r17171709/android_demo/tree/master/WeixinEditText...打开你的微信朋友圈,点击评论,你就会发现有一个小细节:文本输入框的高度恰好定位这条信息的底部位置 ?...但是还有几个小问题,如果是点击最后一的话,会因为滚动空间不足而不能实现相同的效果,并且按返回键的时候,键盘先消失,然后再按一次之后Dialog才消失。...总结 以上所述是小编给大家介绍的Android仿微信朋友圈点击评论自动定位相关功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

1.5K60

从Wi-FiLTE会发生什么?(结尾有惊喜)

这是Wi-Fi Calling的第三篇,聊一聊用户是怎么从Wi-Fi Handover(切换)LTE的。...至于LTE中默认的那个上网APN目前是永远不会建立Wi-Fi中,而且也没有必要,因为我们说VoWiFi所使用的无线接入就是可以跟互联网连接的WiFi,那么当然切换到WiFi的时候上网就不再需要通信的PDN...因此从WiFiLTE的切换也就是只涉及IMS这个APN的PDN,所以也可以称为是一个PDN的切换过程。...需要注意的是在切换之前的用户状态,绿色的表示用户在LTE下的Session,紫色的表示在Wi-Fi下的Session,也就是说在发生WiFiLTE切换之前是需要用户同时注册在LTE和WiFi上的,而且...不管是方案a还是b,在第一篇Wi-Fi附着中介绍过当用户在WiFi附着的时候PGW都要通过S6b这个接口将其ID(FQDN)或者IP等信息更新给AAA最终更新到HSS,然后HSS再将其插入MME中,这样

82820

Linux生产环境CPU使用率100%,教你定位具体函数

在我们项目部署上线的时候,我们是不是会经常去Linux服务器上查查服务器的CPU使用率,或者是运维经常会盯Linux的CPU使用率,发现监控报了60%的一般就会报警了,到了100%那就惨啦,做我开发的我们如果自己程序运行时...今天我就将我们线上之前有个100%的CPU给大家讲解下,然后教大家怎么去定位然后发现具体的函数,然后去修改它就行了 01 什么是CPU使用率 CPU 使用率,就是除了空闲时间外的其他时间占总 CPU...02 怎么找出100%的问题 我们在上面先大致的了解了CPU使用率是什么,下面我就来教大家怎么定位造成CPU100%的具体函数。...1 用ssh客户端登录到你的服务器 运行 top 命令,然后按一下键盘上 1 键,查看你Linux服务器上每个CPU的使用率情况,如下图 ?...现在,我这个CPU是正常的,就没有给重新放出100%进程了,定位方法时一样的。

1.5K20

查IP定位精确街道,高精度定位网站分享

这里两个分享高精度查IP定位网站,亲测可以直接准确的定位到你家楼下哦,只要你知道对付的IP就可以定位他人在哪里,再也不怕被骗而找不到对付的ip了,或者是有某方面的需求。...地址1:http://chaipip.com/((推荐,超级精准,两个接口查询哦,一个定位50左右,另一个定位到你家门口。))...地址2:https://www.opengps.cn/Data/IP/LocHighAcc.aspx IP定位查询,多数据精准街道 一个精准查询IP的网站,网站数据来自各大不同网站的IP查询,可以精准具体的街道...,比如无作为自己测试自己的IP位置就可以精准自己的街道, 有些IP的网站也能,包括无作为自己的IP查询页面,不过数据不准确,因为动态拨号的IP是会变化的,就像无作为这种寝室里面每天都会断电的情况,每天会自动拨号...精准定位到你家 更新测试:2017年12月21日11时 地址一的查询IP定位在线工具确实非常的精准,准确五十米以内的误差,就差你没有被查水表了,只需要输入别人的ip信息,在输入验证码就可以查询别人家里的具体位置

85.6K82
领券