gdb 定位 oops call trace
[ 1.454380] BUG: unable to handle kernel NULL pointer dereference at 00000000000005d0
[ 1.474020] IP: [<ffffffff8144375b>] DSFW_rx_handle+0x1bb/0x370
[ 1.487902] PGD 139c25067 PUD 135301067 PMD 0
[ 1.497467] Oops: 0000 [#1] SMP
[ 1.503342] Modules linked in:
[ 1.508646] CPU: 0 PID: 3 Comm: ksoftirqd/0 Not tainted 3.10.52-waf #133
[ 1.524811] Hardware name: To be filled by O.E.M. To be filled by O.E.M./To be filled by O.E.M., BIOS 4.6.4 01/06/2012
[ 1.552962] task: ffff88013b0c0ba0 ti: ffff88013b0d4000 task.ti: ffff88013b0d4000
[ 1.571471] RIP: 0010:[<ffffffff8144375b>] [<ffffffff8144375b>] DSFW_rx_handle+0x1bb/0x370
[ 1.592629] RSP: 0018:ffff88013b0d5c98 EFLAGS: 00010202
[ 1.604640] RAX: 00000000fffffffe RBX: ffff8801353c4d00 RCX: 00000000001978fd
[ 1.622107] RDX: 0000000000000043 RSI: ffff88012bb00180 RDI: 00000000000005a8
[ 1.639575] RBP: 00000000000005a8 R08: 0000000000016d20 R09: 0000000000000000
[ 1.657043] R10: 0000000000000000 R11: ffff88011d1e2e2a R12: 0000000000000001
[ 1.674511] R13: 0000000000020063 R14: ffff8801378ea3d0 R15: 000000000000003e
[ 1.691981] FS: 0000000000000000(0000) GS:ffff88013fa00000(0000) knlGS:0000000000000000
[ 1.712308] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1.725618] CR2: 00000000000005d0 CR3: 00000001353c6000 CR4: 00000000000407b0
[ 1.743085] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1.760553] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1.778019] Stack:
[ 1.780151] ffff8801378ea3e0 ffffc90001cc3988 ffff8801353c4d00 ffffffff812b87f6
[ 1.798609] ffff88013b008900 ffff880137e87d00 ffff880137edc680 ffff88013b0d5d64
[ 1.817064] ffffc90001cc39b0 0001397200000100 ffff880137edc000 ffffffff814435a0
[ 1.835520] Call Trace:
[ 1.838954] [<ffffffff812b87f6>] ? e1000e_clean_rx_irq_nff+0x256/0xbc0
[ 1.854861] [<ffffffff814435a0>] ? DSFW_fif_recv+0x70/0x70
[ 1.867650] [<ffffffff812b91ce>] ? e1000e_poll+0x6e/0x1c0
[ 1.880179] [<ffffffff81389a68>] ? net_rx_action+0x88/0x170
[ 1.893228] [<ffffffff81037f46>] ? __do_softirq+0xd6/0x290
[ 1.906015] [<ffffffff81038129>] ? run_ksoftirqd+0x29/0x40
[ 1.918806] [<ffffffff810591d3>] ? smpboot_thread_fn+0x103/0x190
[ 1.933156] [<ffffffff810590d0>] ? lg_global_unlock+0x60/0x60
[ 1.946723] [<ffffffff81052088>] ? kthread+0xb8/0xc0
[ 1.957954] [<ffffffff81051fd0>] ? __kthread_parkme+0x80/0x80
[ 1.971522] [<ffffffff814e121c>] ? ret_from_fork+0x7c/0xb0
[ 1.984311] [<ffffffff81051fd0>] ? __kthread_parkme+0x80/0x80
[ 1.997877] Code: 00 48 98 48 c1 e0 06 01 90 f0 98 9d 81 83 80 f4 98 9d 81 01 48 85 ed 75 0f eb 4d 0f 1f 44 00 00 48 85 db 74 43 48 89 dd 48 89 ef <48> 8b 5d 28 e8 6c fd ff ff 85 c0 74 e8 8b 85 d4 00 00 00 83 f8
[ 2.053478] RIP [<ffffffff8144375b>] DSFW_rx_handle+0x1bb/0x370
[ 2.067594] RSP <ffff88013b0d5c98>
[ 2.074145] CR2: 00000000000005d0
例如
[ 2.053478] RIP [<ffffffff8144375b>] DSFW_rx_handle+0x1bb/0x370
ffffffff8144375b 是指令在内存中的虚拟地址
DSFW_rx_handle 是函数(symbol 名)
0x1bb/0x370 ,0x370 是这个函数编译成机器码后的长度,0x1bb是ffffffff8144375b这条指令在相对于
DSFW_rx_handle 函数入口的偏移
gdb定位
# gdb vmlinux
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /home/wesley/dvlp/WAF/trunk/build/linux-3.10.52/vmlinux...done.
(gdb) l *DSFW_rx_handle+0x1bb/0x370
gdb 定位 oops call trace的更多相关文章
- 【Z】段错误Segment Fault定位,即core dump文件与gdb定位
使用C++开发系统有时会出现段错误,即Segment Fault.此类错误程序直接崩溃,通常没有任何有用信息输出,很难定位bug,因而无从解决问题.今天我们介绍core dump文件,并使用gdb进行 ...
- linux设备驱动程序第四部分:从如何定位oops对代码的调试方法,驱动线
在一个我们谈到了如何编写一个简单的字符设备驱动程序,我们不是神,编写肯定会失败的代码,在这个过程中,我们需要继续写代码调试.在普通c应用.我们经常使用printf输出信息.或者使用gdb要调试程序,然 ...
- linux设备驱动第四篇:从如何定位oops的代码行谈驱动调试方法
上一篇我们大概聊了如何写一个简单的字符设备驱动,我们不是神,写代码肯定会出现问题,我们需要在编写代码的过程中不断调试.在普通的c应用程序中,我们经常使用printf来输出信息,或者使用gdb来调试程序 ...
- oops call trace 解析
Call Trace: [ 221.634988] [<ffffffff8103fbc7>] ? kmld_pte_lookup+0x17/0x60 [ 221.635016] [ ...
- 驱动: oops
linux驱动调试--段错误之oops信息分析 http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29401328&id= ...
- Understanding a Kernel Oops!
Understanding a kernel panic and doing the forensics to trace the bug is considered a hacker's job. ...
- [fw]Understanding a Kernel Oops!
An “Oops” is what the kernel throws at us when it finds something faulty, or an exception, in the ke ...
- 使用gdb调试Python进程
使用gdb调试Python进程 有时我们会想调试一个正在运行的Python进程,或者一个Python进程的coredump.例如现在遇到一个mod_wsgi的进程僵死了,不接受请求,想看看究竟是运行到 ...
- Oracle 11g R2性能优化 SQL TRACE
作为Oracle官方自带的一种基本性能诊断工具,SQL Trace可以用来评估当前正在运行的SQL语句的效率,同时为该语句生成统计信息等,并保存这些信息到指定路径下的跟踪文件(trace)当中.SQL ...
随机推荐
- Javascript——DOM
DOM(Document Object Model)文档对象模型 --DOM可以将任何HTML或XML文档描绘成一个由多层节点构成的结构. D--doument(文档).当创建一个网页并把它加载到we ...
- Nginx负载均衡配置实例详解
负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...
- 本机jdbc连接报The user specified as a definer ('root'@'%') does not exist
昨晚一台测试服务器连接本机的mysql时,有些调用存储过程报"The user specified as a definer ('root'@'%') does not exist" ...
- 03Mybatis_mybatis框架原理——执行流程
mybatis的框架的原理(执行流程).
- js的动态加载、缓存、更新以及复用(三)
总体思路 1. 建立一个js服务,该服务实现通用js文件的加载.依赖.缓存.更新以及复用. 2. 各个项目如果使用通用js,可(bi)以(xu)使用js服务实现加载. 3. Js服务只提供通用的 ...
- Spirit - 腾讯移动 Web 整体解决方案
Spirit 并不是一个具体的框架或者工具,但是她是移动端一系列解决方案的整合与聚拢.她是腾讯 Alloyteam 开发团队在移动开发项目中通过大量实践.归纳.总结提炼而成,最终沉淀下来的一个体系,真 ...
- Echo.js – 简单易用的 JavaScript 图片延迟加载插件
Echo.js 是一个独立的延迟加载图片的 JavaScript 插件.Echo.js 不依赖第三方库,压缩后不到1KB大小. 延迟加载是提高网页首屏显示速度的一种很有效的方法,当图片元素进入窗口可视 ...
- MyEclipse之无法连接到MySQL数据库
问题描述: 在连接mysql中出现如下警告 Fri Oct 28 02:21:53 CST 2016 WARN: Establishing SSL connection without server' ...
- 关于内存泄露分析插件 MAT 的用法
关于内存泄露分析插件 MAT 的用法,建议大家有时间看一下,下面的文章 http://www.blogjava.net/rosen/archive/2010/05/21/321575.html htt ...
- Understanding theory (1)
Source: verysmartbrothas.com It has been confusing since my first day as a PhD student about theory ...