青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Oops 定位錯誤代碼行

Posted on 2013-04-10 15:16 墨…… 閱讀(1011) 評論(0)  編輯 收藏 引用
這幾天一直在調試atmel at91sam9x25的串口,用著用著總會導致Oops,Oops內容如下:
[ 1023.510000] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[ 1023.520000] pgd = c0004000
[ 1023.520000] [00000000] *pgd=00000000
[ 1023.520000] Internal error: Oops: 17 [#1]
[ 1023.520000] last sysfs file: /sys/devices/virtual/misc/at91flash/dev
[ 1023.520000] Modules linked in: at91flash at91gpio at91mc323 ds18b20 at91adc
[ 1023.520000] CPU: 0    Tainted: G        W    (2.6.39 #35)
[ 1023.520000] PC is at atmel_tasklet_func+0x104/0x690
[ 1023.520000] LR is at atmel_tasklet_func+0x10/0x690
[ 1023.520000] pc : [<c01a33ac>]    lr : [<c01a32b8>]    psr: 20000013
[ 1023.520000] sp : c7825f58  ip : 60000093  fp : 00000000
[ 1023.520000] r10: 00000006  r9 : 00000000  r8 : 0000000a
[ 1023.520000] r7 : 00000000  r6 : c7824000  r5 : c78a2484  r4 : c03c0cb8
[ 1023.520000] r3 : 0000004c  r2 : 0000004c  r1 : 60000013  r0 : 00000001
[ 1023.520000] Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[ 1023.520000] Control: 0005317f  Table: 27b40000  DAC: 00000017
[ 1023.520000] Process ksoftirqd/0 (pid: 3, stack limit = 0xc7824270)
[ 1023.520000] Stack: (0xc7825f58 to 0xc7826000)
[ 1023.520000] 5f40:                                                       00000001 c7824000
[ 1023.520000] 5f60: 00000100 0000000a 00000000 00000006 c7825f8c 00000000 00000001 c7824000
[ 1023.520000] 5f80: 00000100 0000000a 00000006 c0045cf8 c03b995c c00461d8 c7aa6ae0 00000000
[ 1023.520000] 5fa0: 60000093 00000000 c7824000 c0046274 00000013 00000000 00000000 c00462e0
[ 1023.520000] 5fc0: 00000000 c7819f70 00000000 c00570e0 00000000 00000000 00000000 00000000
[ 1023.520000] 5fe0: c7825fe0 c7825fe0 c7819f70 c0057060 c0030b14 c0030b14 ffffffff ffffffff
[ 1023.520000] [<c01a33ac>] (atmel_tasklet_func+0x104/0x690) from [<c0045cf8>] (tasklet_action+0x84/0xe
[ 1023.520000] [<c0045cf8>] (tasklet_action+0x84/0xe from [<c00461d8>] (__do_softirq+0x88/0x124)
[ 1023.520000] [<c00461d8>] (__do_softirq+0x88/0x124) from [<c00462e0>] (run_ksoftirqd+0x6c/0x12
[ 1023.520000] [<c00462e0>] (run_ksoftirqd+0x6c/0x12 from [<c00570e0>] (kthread+0x80/0x8
[ 1023.520000] [<c00570e0>] (kthread+0x80/0x8 from [<c0030b14>] (kernel_thread_exit+0x0/0x
[ 1023.520000] Code: 1a000002 e59f057c e59f157c ebfa3d49 (e5973000) 
[ 1023.710000] ---[ end trace 786b41cd25d3b661 ]---
[ 1023.710000] Kernel panic - not syncing: Fatal exception in interrupt
[ 1023.720000] [<c0034b10>] (unwind_backtrace+0x0/0xe0) from [<c02a8af8>] (panic+0x50/0x170)
[ 1023.720000] [<c02a8af8>] (panic+0x50/0x170) from [<c0032e00>] (die+0x184/0x1c4)
[ 1023.730000] [<c0032e00>] (die+0x184/0x1c4) from [<c0035aa8>] (__do_kernel_fault+0x64/0x84)
[ 1023.740000] [<c0035aa8>] (__do_kernel_fault+0x64/0x84) from [<c0035c7c>] (do_page_fault+0x1b4/0x1c
[ 1023.750000] [<c0035c7c>] (do_page_fault+0x1b4/0x1c from [<c002a240>] (do_DataAbort+0x30/0x9
[ 1023.760000] [<c002a240>] (do_DataAbort+0x30/0x98) from [<c002f86c>] (__dabt_svc+0x4c/0x60)
[ 1023.770000] Exception stack(0xc7825f10 to 0xc7825f58)
[ 1023.770000] 5f00:                                     00000001 60000013 0000004c 0000004c
[ 1023.780000] 5f20: c03c0cb8 c78a2484 c7824000 00000000 0000000a 00000000 00000006 00000000
[ 1023.790000] 5f40: 60000093 c7825f58 c01a32b8 c01a33ac 20000013 ffffffff
[ 1023.790000] [<c002f86c>] (__dabt_svc+0x4c/0x60) from [<c01a33ac>] (atmel_tasklet_func+0x104/0x690)
[ 1023.800000] [<c01a33ac>] (atmel_tasklet_func+0x104/0x690) from [<c0045cf8>] (tasklet_action+0x84/0xe8)
[ 1023.810000] [<c0045cf8>] (tasklet_action+0x84/0xe8) from [<c00461d8>] (__do_softirq+0x88/0x124)
[ 1023.820000] [<c00461d8>] (__do_softirq+0x88/0x124) from [<c00462e0>] (run_ksoftirqd+0x6c/0x128)
[ 1023.830000] [<c00462e0>] (run_ksoftirqd+0x6c/0x128) from [<c00570e0>] (kthread+0x80/0x88)
[ 1023.840000] [<c00570e0>] (kthread+0x80/0x88) from [<c0030b14>] (kernel_thread_exit+0x0/0x8)
注意上述紅色的地方。
下面就來顯示如何定位出出錯代碼行:
1.首先,編譯時打開complie with debug info選項,步則如下
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig
oops1.jpg 
進入 Kernel hacking
oops2.jpg 
選擇 Compile the kernel with debug info
然后,保存,退出。
接著 make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
編譯, 等編譯完成。
2.利用arm-none-linux-gnueabi-gdb 調試,如下:
arm-none-linux-gnueabi-gdb vmlinux
oops3.jpg 
對應著Oops 消息里面的這一行
[ 1023.520000] LR is at atmel_tasklet_func+0x10/0x690
在gdb下鍵入命令 : l *at atmel_tasklet_func+0x10
oops4.jpg 
這樣就找到了出錯的代碼行。在這里鄙視一下atmel提供的內核,竟然還有bug,fuck it!
從這里可以看出是由于串口的dma導致Oops的,于是我去掉了串口的dma傳輸。方法如下:
oops5.jpg 
去掉之后還沒有發現上述的Oops出現。

以上來自: 
http://bbs.chinaunix.net/thread-3744197-1-1.html

用以上的方法也能解決 Oops,但我發現我的情況是有的串口收發都可以使用 DMA,而有的就不行,于是我一個一個串口的測試,修改源碼,將不能使用DMA的串口的DMA功能關閉掉,而不是將所有串口的 DMA 功能都關閉。


posts - 8, comments - 0, trackbacks - 0, articles - 0

Copyright © 墨……

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            精久久久久久| 久久在线免费观看| 久久综合精品国产一区二区三区| 亚洲欧美成人精品| 亚洲欧美卡通另类91av| 欧美一级播放| 欧美体内谢she精2性欧美| 欧美日韩国产精品一卡| 欧美日韩美女在线观看| 欧美天堂亚洲电影院在线观看| 国产精品视频免费在线观看| 国内精品视频666| 亚洲激情第一区| 亚洲一区二区三区中文字幕| 欧美在线免费视频| 欧美韩国日本综合| 一区二区三区四区精品| 欧美伊人久久大香线蕉综合69| 久久综合成人精品亚洲另类欧美| 欧美激情一区二区久久久| 国产精品日韩欧美综合 | 国产精品乱子久久久久| 国产午夜精品视频| 亚洲美女在线一区| 久久久国产一区二区| 亚洲激情电影在线| 午夜欧美大片免费观看| 欧美大片在线观看一区| 国产欧美韩国高清| 亚洲精品久久7777| 久久国产天堂福利天堂| 亚洲精品视频在线观看免费| 久久成人精品| 国产精品久久久久久久久久尿| 亚洲激情不卡| 久久久在线视频| 一区二区三区四区蜜桃| 欧美不卡三区| 一区免费在线| 久久爱www.| 中文无字幕一区二区三区| 欧美成人免费网| 亚洲国产高清在线观看视频| 欧美在线观看一区二区| 中日韩美女免费视频网址在线观看| 久久综合免费视频影院| 国内精品伊人久久久久av一坑| 亚洲中无吗在线| 亚洲免费观看在线视频| 欧美电影在线观看| 最近看过的日韩成人| 欧美va天堂在线| 久久精品日韩| 黄色在线一区| 免费永久网站黄欧美| 久久精品国产一区二区电影| 国产日韩欧美一区| 久久精品国产77777蜜臀| 午夜精品福利电影| 国产日韩欧美中文在线播放| 久久福利毛片| 欧美中文字幕久久| 激情文学综合丁香| 免费试看一区| 久久亚洲二区| 亚洲深夜激情| 亚洲激情婷婷| 欧美理论大片| 99精品欧美一区二区三区综合在线 | 久久蜜臀精品av| 一区二区三区在线观看欧美| 免费久久99精品国产| 欧美3dxxxxhd| 亚洲网站在线看| 午夜精品美女自拍福到在线| 国产亚洲欧洲997久久综合| 久久亚洲精品一区| 欧美国产视频在线| 亚洲一区二区在线观看视频| 午夜精品久久久久久99热软件| 国产亚洲一区在线| 亚洲第一网站免费视频| 欧美三级小说| 久久久久久亚洲综合影院红桃| 久久亚洲视频| 亚洲小说欧美另类婷婷| 午夜亚洲性色视频| 亚洲区第一页| 亚洲欧美日韩在线| 亚洲激情网站免费观看| 亚洲一品av免费观看| 激情欧美日韩一区| 亚洲美女区一区| 国内精品一区二区| 99re亚洲国产精品| 好看的亚洲午夜视频在线| 亚洲精品美女91| 国模吧视频一区| 999亚洲国产精| 一区一区视频| 亚洲欧美综合| 中文日韩在线| 美日韩在线观看| 久久精品一本久久99精品| 欧美精品观看| 久热精品视频在线观看| 欧美午夜美女看片| 亚洲黑丝一区二区| 激情视频一区二区三区| 亚洲在线观看视频| 亚洲视频免费在线| 欧美国产日韩在线观看| 免费成人黄色片| 国产日韩精品一区二区浪潮av| 亚洲精选一区| 日韩系列在线| 欧美激情1区2区| 欧美成人有码| 永久555www成人免费| 欧美亚洲一级片| 欧美在线观看网址综合| 国产精品国产精品国产专区不蜜| 亚洲国产精品久久人人爱蜜臀| 一区二区亚洲精品| 久久狠狠亚洲综合| 亚洲欧美视频一区二区三区| 国产精品美女久久久久久免费| 亚洲激情在线播放| 亚洲国产婷婷综合在线精品 | 亚洲小说春色综合另类电影| 欧美77777| 亚洲国产精品视频| 亚洲精品婷婷| 欧美激情一区二区三区在线视频 | 免费视频一区二区三区在线观看| 国产日韩欧美不卡| 欧美亚洲综合另类| 久久久久久久97| 韩国视频理论视频久久| 校园春色综合网| 久久精品一区二区三区四区| 国产一区视频观看| 久久国产婷婷国产香蕉| 久热综合在线亚洲精品| 一区二区在线观看视频在线观看| 久久人人97超碰国产公开结果| 久久久久久亚洲精品杨幂换脸 | 久久不射网站| 国产在线麻豆精品观看| 久久久蜜臀国产一区二区| 欧美成人69| 亚洲免费电影在线观看| 欧美肉体xxxx裸体137大胆| 亚洲一区二区三| 久久这里只有| 99国产麻豆精品| 国产精品一级久久久| 久久国产福利国产秒拍| 亚洲第一在线综合在线| 一区二区三区四区精品| 国产麻豆日韩| 狂野欧美激情性xxxx| 亚洲精品欧美精品| 欧美在线高清视频| 91久久国产综合久久91精品网站| 欧美精品综合| 欧美一区二视频| 亚洲日本成人| 久久青青草原一区二区| 日韩亚洲欧美在线观看| 国产人成精品一区二区三| 另类av导航| 亚洲免费在线精品一区| 欧美激情一区二区三区四区| 亚洲综合国产激情另类一区| 韩国欧美一区| 欧美午夜精品| 老鸭窝91久久精品色噜噜导演| 亚洲天堂免费观看| 亚洲国产日韩欧美| 久久欧美中文字幕| 亚洲综合精品一区二区| 91久久在线播放| 国产真实久久| 国产精品视频免费在线观看| 欧美电影打屁股sp| 久久久久久久波多野高潮日日| 99精品福利视频| 亚洲国产日日夜夜| 久久亚洲精品网站| 欧美在线视频一区二区三区| 久久影院午夜论| 老鸭窝毛片一区二区三区| 一本久道久久综合中文字幕| 精品不卡在线| 国产日韩免费| 国产精品网站一区| 欧美视频在线观看一区| 欧美日本三级| 欧美精品91|