免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1488 | 回复: 7
打印 上一主题 下一主题

[内核模块] 内核中把一个为NULL的指针复制给另外指针出现的OOPS 及位置跟踪 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-12-05 16:05 |只看该作者 |倒序浏览
可以根据这一行找到代码出先的地方IP: [<c0562f07>] tcp_sendmsg+0x607/0xa50 其中0x607就是函数出现位置 即在该函数的第0X607字节

Dec  5 15:37:42 ubuntu kernel: [  257.845883] BUG: unable to handle kernel NULL pointer dereference at 00000009
Dec  5 15:37:42 ubuntu kernel: [  257.845976] IP: [<c0562f07>] tcp_sendmsg+0x607/0xa50
Dec  5 15:37:42 ubuntu kernel: [  257.846041] *pde = 00000000
Dec  5 15:37:42 ubuntu kernel: [  257.846077] Oops: 0002 [#1] SMP
Dec  5 15:37:42 ubuntu kernel: [  257.846121] Modules linked in: binfmt_misc i915 snd_hda_codec_realtek snd_hda_intel snd_hda_codec drm_kms_helper snd_hwdep snd_pcm drm snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device snd i2c_algo_bit intel_agp soundcore intel_gtt snd_page_alloc ppdev agpgart lp parport_pc video parport usbhid hid floppy atl1c
Dec  5 15:37:42 ubuntu kernel: [  257.846540]
Dec  5 15:37:42 ubuntu kernel: [  257.846562] Pid: 1513, comm: ftp Not tainted 3.1.4 #211 Gigabyte Technology Co., Ltd. G31M-ES2C/G31M-ES2C
Dec  5 15:37:42 ubuntu kernel: [  257.846670] EIP: 0060:[<c0562f07>] EFLAGS: 00210206 CPU: 0
Dec  5 15:37:42 ubuntu kernel: [  257.846730] EIP is at tcp_sendmsg+0x607/0xa50
Dec  5 15:37:42 ubuntu kernel: [  257.846778] EAX: 0000002b EBX: e7d40500 ECX: 00000009 EDX: 00000000
Dec  5 15:37:42 ubuntu kernel: [  257.846844] ESI: f1db6e00 EDI: 00000009 EBP: d8ee7e40 ESP: d8ee7da8
Dec  5 15:37:42 ubuntu kernel: [  257.846909]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Dec  5 15:37:42 ubuntu kernel: [  257.846967] Process ftp (pid: 1513, ti=d8ee6000 task=d7398ca0 task.ti=d8ee6000)
Dec  5 15:37:42 ubuntu kernel: [  257.847041] Stack:
Dec  5 15:37:42 ubuntu kernel: [  257.847065]  c07d7fb4 d8ee7dbc c012b866 00000009 00000001 d8ee7f50 00001c48 00000000
Dec  5 15:37:42 ubuntu kernel: [  257.847174]  00000041 00000000 00000000 00000000 d7395b78 00000009 b7808000 00000000
Dec  5 15:37:42 ubuntu kernel: [  257.847281]  000005a7 f6af4280 00000000 c08705e4 00000000 00000000 00000000 00000001
Dec  5 15:37:42 ubuntu kernel: [  257.847388] Call Trace:
Dec  5 15:37:42 ubuntu kernel: [  257.847422]  [<c012b866>] ? __kunmap_atomic+0x76/0xa0
Dec  5 15:37:42 ubuntu kernel: [  257.847479]  [<c05824a7>] inet_sendmsg+0x47/0xb0
Dec  5 15:37:42 ubuntu kernel: [  257.847532]  [<c0514d3e>] sock_aio_write+0x14e/0x160
Dec  5 15:37:42 ubuntu kernel: [  257.847589]  [<c0219a8d>] ? mem_cgroup_charge_common+0x5d/0x70
Dec  5 15:37:42 ubuntu kernel: [  257.847654]  [<c021e554>] do_sync_write+0xa4/0xe0
Dec  5 15:37:42 ubuntu kernel: [  257.847706]  [<c021e6d8>] ? rw_verify_area+0x68/0x120
Dec  5 15:37:42 ubuntu kernel: [  257.847762]  [<c021ebb6>] vfs_write+0x156/0x170
Dec  5 15:37:42 ubuntu kernel: [  257.847812]  [<c021eca2>] sys_write+0x42/0x70

论坛徽章:
0
2 [报告]
发表于 2012-12-05 21:31 |只看该作者
利用kdump或者objdump分析.....

论坛徽章:
0
3 [报告]
发表于 2012-12-06 19:01 |只看该作者
楼上说的正是 ,不过我没有用过 呵呵 ,受教啦,谢谢回复 2# 鬼鬼一哈


   

论坛徽章:
0
4 [报告]
发表于 2012-12-07 09:09 |只看该作者
请问一下ubutun10.10下kdump的安装...求帮助!!!谢谢回复 2# 鬼鬼一哈


   

论坛徽章:
0
5 [报告]
发表于 2012-12-07 11:19 |只看该作者
tcp_sendmsg+0x607/0xa50 其中0x607就是函数出现位置 即在该函数的第0X607字节

这个是汇编代码中的偏移和长度.

论坛徽章:
0
6 [报告]
发表于 2012-12-07 11:21 |只看该作者
@鬼鬼一哈 一直只知道objdump, 第一次听说 kdump. 受教了.

论坛徽章:
0
7 [报告]
发表于 2012-12-07 11:22 |只看该作者
一直只知道objdump, 第一次听说 kdump. 受教了.@鬼鬼一哈

论坛徽章:
0
8 [报告]
发表于 2012-12-07 13:12 |只看该作者
您说的很对 是编译 回复 5# hk2305621


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP