Chinese translated version of Documentation/oops-tracing.txt If you have any comment or update to the content, please contact the original document maintainer directly. However, if you have a problem communicating in English you can also ask the Chinese maintainer for help. Contact the Chinese maintainer if this translation is outdated or if there is a problem with the translation. Chinese maintainer: Dave Young <hidave.darkstar@gmail.com> --------------------------------------------------------------------- Documentation/oops-tracing.txt çä¸ćçżťčŻ ĺŚććłčŻčŽşćć´ć°ćŹćçĺ 厚ďźčŻˇç´ćĽčçłťĺć楣ççť´ć¤č ăĺŚćä˝ ä˝żç¨čąć 交ćľćĺ°éžçčŻďźäšĺŻäťĽĺä¸ćççť´ć¤č ćąĺŠăĺŚććŹçżťčŻć´ć°ä¸ĺćśćč çżť čŻĺĺ¨éŽé˘ďźčŻˇčçłťä¸ćççť´ć¤č ă ä¸ćççť´ć¤č ďź ć¨ç Dave Young <hidave.darkstar@gmail.com> ä¸ćççżťčŻč ďź ć¨ç Dave Young <hidave.darkstar@gmail.com> ä¸ćçć ĄčŻč ďź ćéł Li Yang <leo@zh-kernel.org> çčŞ Wang Cong <xiyou.wangcong@gmail.com> 䝼ä¸ä¸şćŁć --------------------------------------------------------------------- 注ćďź ksymoops ĺ¨2.6ä¸ćŻć˛Ąćç¨çă 诡䝼ĺćć źĺźä˝żç¨Oops(ćĽčŞdmesgďźçç)ă ĺż˝çĽäťťä˝čżć ˇéŁć ˇĺ łäşâ解ç Oopsâćč âéčżksymoopsčżčĄâçć楣ă ĺŚćä˝ č´´ĺşčżčĄčż ksymoopsçćĽčŞ2.6çOopsďźäşşäťŹĺŞäźčŽŠä˝ éč´´ä¸ćŹĄă 忍éćťçť ------------- ĺç°Oopsĺšśĺéçťçäźźç¸ĺ łçĺ ć ¸é˘ĺççť´ć¤č ăĺŤĺ¤Şć ĺżĺŻšä¸ä¸ĺˇăĺŚćä˝ ä¸çĄŽĺŽĺ°ąĺçť ĺä˝ ćĺçäşć ç¸ĺ łç䝣ç çč´č´Łäşşă ĺŚćĺŻéç°čŻçćčż°ćć ˇéćă éŁçčłćŻoopsć´ć 䝡ĺźă ĺŚćä˝ ĺŻšäşĺéçťč°ä¸ć ćçĽďź ĺçťlinux-kernel@vger.kernel.orgăćč°˘ä˝ ĺ¸ŽĺŠLinux ĺ°˝ĺŻč˝ĺ°ç¨łĺŽă Oopsĺ¨ĺŞé? ---------------------- é常OopsććŹçąklogdäťĺ ć ¸çźĺ˛ĺşé话ĺĺšśäź çťsyslogdďźçąsyslogdĺĺ°syslogćäťśä¸ďź ĺ ¸ĺĺ°ćŻ/var/log/messages(äžčľäş/etc/syslog.conf)ăććśklogdĺ´Šćşäş,čżç§ć ĺľä¸ä˝ č˝ĺ¤čżčĄdmesg > filećĽäťĺ ć ¸çźĺ˛ĺşä¸čŻťĺć°ćŽĺšśäżĺä¸ćĽă ĺŚĺä˝ ĺŻäťĽ cat /proc/kmsg > fileďź çśčä˝ ĺż éĄťäťĺ Ľä¸ć˘äź čžďź kmsgćŻä¸ä¸Şâć°¸ä¸çťćçćäťśâăĺŚ ććşĺ¨ĺ´Šćşĺĺ°ä˝ ä¸č˝čžĺ Ľĺ˝äť¤ćč çŁçä¸ĺŻç¨éŁäšä˝ ćä¸ç§éćŠ:- ďź1ďź ććĺąĺšä¸çććŹĺž ćşĺ¨éĺŻĺĺčžĺ ĽčŽĄçŽćşă éşťçŚä˝ĺŚć沥ćé寚崊ćşçĺĺ¤ďź čżćŻäť ćçéćŠă ĺŚĺ¤ďźä˝ ĺŻäťĽç¨ć°ç ç¸ćşćĺąĺšćä¸ćĽ-ä¸ĺ¤ŞĺĽ˝ďźä˝ćŻć˛Ąćĺźşă ĺŚć俥 ćŻćťĺ¨ĺ°äşçťçŤŻçä¸é˘ďźä˝ äźĺç°äťĽéŤĺ螊çĺŻĺ¨ďźćŻĺŚďźvga=791ďźäźčŽŠä˝ 话ĺ°ć´ĺ¤çć ćŹăďźćł¨ćďźčżéčŚvesafbďźć䝼寚âćŠćâçoops沥ć帎ĺŠďź ďź2ďźç¨ä¸˛ĺŁçťçŤŻĺŻĺ¨ďźčŻˇĺçDocumentation/serial-console.txtďźďźčżčĄä¸ä¸Şnull modemĺ°ĺŚä¸ĺ°ćşĺ¨ĺšśç¨ä˝ ĺ揢çéčŽŻĺˇĽĺ ˇčˇĺčžĺşăMinicom塼ä˝ĺ°ĺžĺĽ˝ă ďź3ďźä˝żç¨KdumpďźčŻˇĺçDocumentation/kdump/kdump.txtďźďź 使ç¨ĺ¨Documentation/kdump/gdbmacros.txtä¸ĺŽäšçdmesg gdbĺŽďźäťć§çĺ ĺä¸ćĺĺ ć ¸ çŻĺ˝˘çźĺ˛ĺşă ĺŽć´äżĄćŻ ---------------- 注ćďźäťĽä¸ćĽčŞäşLinusçéŽäťśéç¨äş2.4ĺ ć ¸ă ćĺ 为ĺĺ˛ĺĺ äżçäşĺŽďźĺšśä¸ĺ ä¸şĺ śä¸ ä¸äşäżĄćŻäťçśéç¨ă çšĺŤćł¨ćçćŻďźčŻˇĺż˝çĽäťťä˝ksymoopsçĺźç¨ă From: Linus Torvalds <torvalds@osdl.org> ćć ˇčˇč¸ŞOops.. [ĺĺĺ°linux-kernelçä¸ĺ°éŽäťś] 丝čŚççŞé¨ćŻćäşĺš´ĺčżäşçŚäşşçoopsćśćŻć交éççťéŞ;-) ĺŽé ä¸ďźä˝ ćĺćłä˝żĺŽć´çŽĺăćć两个ä¸ĺçćšćłďź gdb /usr/src/linux/vmlinux gdb> disassemble <offending_function> éŁćŻĺç°éŽé˘ççŽĺĺćłďźčłĺ°ĺŚćbugćĽĺĺç弽çć ĺľä¸ďźčąĄčżä¸Şä¸ć ˇ-čżčĄksymoops ĺžĺ°oopsĺççĺ˝ć°ĺĺ˝ć°ĺ çĺ秝ďźă ĺŚďźĺŚććĽĺĺççĺ ć ¸äťĽç¸ĺççźčŻĺ¨ĺç¸äźźçé 罎çźčŻĺŽäźć帎ĺŠçă ĺŚä¸äťśčŚĺçäşćŻĺćąçźbugćĽĺçâCodeâé¨ĺďźksymoopsäšäźç¨ćŁçĄŽçĺˇĽĺ ˇćĽĺčżäťśäşďź ä˝ĺŚć沥ćéŁäşĺˇĽĺ ˇä˝ ĺŻäťĽĺä¸ä¸Şĺťç¨ĺşďź char str[] = "\xXX\xXX\xXX..."; main(){} ĺšśç¨gcc -gçźčŻĺŽçśĺć§čĄâdisassemble strâďźXXé¨ĺćŻçąOopsćĽĺçĺź-ä˝ ĺŻäťĽäť ĺŞĺ ç˛č´´ĺšśç¨â\xâćżć˘çŠşć ź-ćĺ°ąćŻčżäšĺçďźĺ 为ććĺžĺç¨ĺşčŞĺ¨ĺčżä¸ĺďźă ĺŚĺ¤ďźä˝ ĺŻäťĽç¨scripts/decodecodečżä¸ŞshellčćŹăĺŽç使ç¨ćšćłćŻďź decodecode < oops.txt âCodeâäšĺçĺĺ čżĺśĺčĺŻč˝ďźĺ¨ćäşćśćä¸ďźćä¸äşĺ˝ĺć䝤äšĺçć䝤ĺč䝼ĺ ĺ˝ĺĺäšĺçć䝤ĺč Code: f9 0f 8d f9 00 00 00 8d 42 0c e8 dd 26 11 c7 a1 60 ea 2b f9 8b 50 08 a1 64 ea 2b f9 8d 34 82 8b 1e 85 db 74 6d 8b 15 60 ea 2b f9 <8b> 43 04 39 42 54 7e 04 40 89 42 54 8b 43 04 3b 05 00 f6 52 c0 ćĺďźĺŚćä˝ ćłçĽé䝣ç ćĽčŞĺŞéďźä˝ ĺŻäťĽďź cd /usr/src/linux make fs/buffer.s # ćäťťä˝äş§çBUGçćäťś çśĺä˝ äźćŻgdbĺćąçźć´ć¸ ćĽççĽéĺçäşäťäšă ç°ĺ¨ďźéŽé˘ćŻćä˝ ććĽćçććć°ćŽçťĺ辡ćĽďźCćşç ďźĺ łäşĺŽĺşčŻĽćć ˇçä¸čŹçĽčŻďźďź ćąçźäťŁç ĺĺ śĺćąçźĺžĺ°ç䝣ç ďźĺŚĺ¤čżćäťâoopsâćśćŻĺžĺ°çĺŻĺĺ¨çść-寚äşč§ŁćŻĺç ćéćç¨ďźčä¸ĺ˝ä˝ ćäşćąçźäťŁç ä˝ äšč˝ćżĺ śĺŽçĺŻĺĺ¨ĺäťťä˝ĺŽäťŹĺŻšĺşçC襨螞ĺźĺĺšé ďźă ĺŽé ä¸ďźä˝ äť éççĺŞéä¸ĺšé ďźčżä¸ŞäžĺćŻâCodeâĺćąçźĺçźčŻĺ¨çćç䝣ç ä¸ĺšé ďźă çśĺä˝ éĄťčŚćžĺşä¸şäťäšä¸ĺšé ăé常ĺžçŽĺ-ä˝ çĺ°äťŁç 使ç¨äşçŠşćéçśĺä˝ ç䝣ç ćłçĽé 犺ćéćŻćäšĺşç°çďźčżććŁćĽĺŽćŻĺŚĺćł.. ç°ĺ¨ďźĺŚććç˝čżćŻä¸éĄščćśç塼ä˝čä¸éčŚä¸ä¸çšĺżçä¸ĺżďźć˛Ąéăčżĺ°ąćŻć为äťäšĺ¤§ĺ¤ ĺŞćŻĺż˝çĽéŁäşć˛Ąć珌ĺˇčĄ¨äżĄćŻçĺ´ŠćşćĽĺçĺĺ ďźçŽĺç说太éžćĽćžäşďźććä¸äş ç¨ĺşç¨äşĺ¨ĺ ć ¸äťŁç 掾ä¸ćç´˘çšĺŽç樥ĺźďźčä¸ććśćäšĺˇ˛çťč˝ćžĺşéŁäşĺ´Šćşçĺ°ćšďźä˝ćŻ äť äť ćŻćžĺşćŁçĄŽçĺşĺäšçĄŽĺŽéčŚç¸ĺ˝ćĺŽçĺ ć ¸çĽčŻďź _ććś_äźĺçčżç§ć ĺľďźćäť çĺ°ĺ´Šćşä¸çĺćąçźäťŁç ĺşĺďź çśĺć銏ä¸ĺ°ąćç˝éŽé˘ĺşĺ¨ ĺŞéăčżćśćććčŻĺ°čŞĺˇąĺš˛čżä¸ŞĺˇĽä˝ĺˇ˛çťĺ¤Şéżćśé´äş;-) Linus --------------------------------------------------------------------------- ĺ łäşOopsčˇč¸Şçćł¨č§Łďź ä¸şäşĺ¸ŽĺŠLinusĺĺ śĺŽĺ ć ¸ĺźĺč ďźklogdçşłĺ Ľäşĺ¤§éçćŻććĽĺ¤çäżć¤é误ă为äşćĽć寚 ĺ°ĺ解ćçĺŽć´ćŻćčłĺ°ĺşčŻĽä˝żç¨1.3-pl3çsysklogdĺ ă ĺ˝äżć¤é误ĺçćśďźklogdĺŽć¤čżç¨čŞĺ¨ćĺ ć ¸ćĽĺżäżĄćŻä¸çéčŚĺ°ĺçżťčŻćĺŽäťŹç¸ĺşç珌 ĺˇă klogdć§čĄä¸¤ç§çąťĺçĺ°ĺ解ćăéŚĺ ćŻéćçżťčŻĺ śćŹĄćŻĺ¨ćçżťčŻăéćçżťčŻĺksymoops ä¸ć ˇä˝żç¨System.mapćäťśă为äşĺéćçżťčŻklogdĺŽć¤čżç¨ĺż 饝ĺ¨ĺĺ§ĺćśč˝ćžĺ°system mapćäťśăĺ łäşklogdćć ˇćç´˘mapć䝜诡ĺçklogdćĺ饾ă ĺ¨ćĺ°ĺçżťčŻĺ¨ä˝żç¨ĺ ć ¸ĺŻčŁ 载樥ĺćśĺžéčŚă ĺ 为ĺ ć ¸ć¨Ąĺçĺ ĺćŻäťĺ ć ¸ĺ¨ćĺ ĺćą éĺé çďźć䝼ä¸çŽĄćŻć¨Ąĺĺźĺ§ä˝ç˝ŽčżćŻć¨Ąĺä¸ĺ˝ć°ĺ珌ĺˇçä˝ç˝Žé˝ä¸ćŻĺşĺŽçă ĺ ć ¸ćŻćĺ 莸ç¨ĺşĺłĺŽčŁ č˝˝ĺŞäşć¨ĄĺĺĺŽäťŹĺ¨ĺ ĺä¸ä˝ç˝Žççłťçťč°ç¨ă使ç¨čżäşçłťçťč°ç¨ klogdĺŽć¤čżç¨çćä¸ĺź 珌ĺˇčĄ¨ç¨äşč°čŻĺçĺ¨ĺŻčŁ 载樥ĺä¸çäżć¤é误ă čłĺ°klogdäźćäžäş§çäżć¤é误ç樥ĺĺăčżĺŻćé˘ĺ¤ç珌ĺˇäżĄćŻäžĺŻčŁ 载樥ĺĺźĺč éćŠ äťĽäťć¨Ąĺä¸čžĺşçŹŚĺˇäżĄćŻă ĺ 为ĺ ć ¸ć¨ĄĺçŻĺ˘ĺŻč˝ćŻĺ¨ćçďźćäťĽĺż éĄťćä¸ç§ćşĺśĺ˝ć¨ĄĺçŻĺ˘ĺçćšĺćśćĽéçĽklogd ĺŽć¤čżç¨ă ćä¸äşĺŻç¨çĺ˝äť¤čĄé饚ĺ 莸klogdĺĺ˝ĺć§čĄä¸çĺŽć¤čżç¨ĺé俥ĺˇďźĺçĽçŹŚ ĺˇäżĄćŻĺşčŻĽč˘Ťĺˇć°äşă ć´ĺ¤äżĄćŻčŻˇĺçklogdćĺ饾ă sysklogdĺĺ¸ćśĺ ĺŤä¸ä¸ŞčĄĽä¸äżŽćšäşmodules-2.0.0ĺ ďźć 莺ä˝ćśä¸ä¸Şć¨ĄĺčŁ č˝˝ćč ĺ¸č˝˝é˝ äźčŞĺ¨ĺklogdĺé俥ĺˇăćä¸čżä¸ŞčĄĽä¸ćäžäşĺż čŚç寚č°čŻĺçäşĺ ć ¸ĺŻčŁ 载樥ĺçäżć¤ é误çć çźćŻćă 䝼ä¸ćŻč˘Ťklogdĺ¤çčżçĺçĺ¨ĺŻčŁ 载樥ĺä¸çä¸ä¸Şäżć¤é误äžĺďź --------------------------------------------------------------------------- Aug 29 09:51:01 blizard kernel: Unable to handle kernel paging request at virtual address f15e97cc Aug 29 09:51:01 blizard kernel: current->tss.cr3 = 0062d000, %cr3 = 0062d000 Aug 29 09:51:01 blizard kernel: *pde = 00000000 Aug 29 09:51:01 blizard kernel: Oops: 0002 Aug 29 09:51:01 blizard kernel: CPU: 0 Aug 29 09:51:01 blizard kernel: EIP: 0010:[oops:_oops+16/3868] Aug 29 09:51:01 blizard kernel: EFLAGS: 00010212 Aug 29 09:51:01 blizard kernel: eax: 315e97cc ebx: 003a6f80 ecx: 001be77b edx: 00237c0c Aug 29 09:51:01 blizard kernel: esi: 00000000 edi: bffffdb3 ebp: 00589f90 esp: 00589f8c Aug 29 09:51:01 blizard kernel: ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018 Aug 29 09:51:01 blizard kernel: Process oops_test (pid: 3374, process nr: 21, stackpage=00589000) Aug 29 09:51:01 blizard kernel: Stack: 315e97cc 00589f98 0100b0b4 bffffed4 0012e38e 00240c64 003a6f80 00000001 Aug 29 09:51:01 blizard kernel: 00000000 00237810 bfffff00 0010a7fa 00000003 00000001 00000000 bfffff00 Aug 29 09:51:01 blizard kernel: bffffdb3 bffffed4 ffffffda 0000002b 0007002b 0000002b 0000002b 00000036 Aug 29 09:51:01 blizard kernel: Call Trace: [oops:_oops_ioctl+48/80] [_sys_ioctl+254/272] [_system_call+82/128] Aug 29 09:51:01 blizard kernel: Code: c7 00 05 00 00 00 eb 08 90 90 90 90 90 90 90 90 89 ec 5d c3 --------------------------------------------------------------------------- Dr. G.W. Wettstein Oncology Research Div. Computing Facility Roger Maris Cancer Center INTERNET: greg@wind.rmcc.com 820 4th St. N. Fargo, ND 58122 Phone: 701-234-7556 --------------------------------------------------------------------------- ĺ湥ćçĺ ć ¸ ä¸äşoopsćĽĺĺ¨ç¨ĺşčŽ°ć°ĺ¨äšĺĺ ĺŤĺ珌串'Tainted: 'ăčżčĄ¨ćĺ ć ¸ĺˇ˛çťč˘Ťä¸äşä¸čĽżçťćąĄ ćäşă 诼ĺ珌串äšĺç´§čˇçä¸çłťĺçä˝ç˝Žććçĺ珌ďźćŻä¸ŞäťŁčĄ¨ä¸ä¸ŞçšĺŽç湥ćĺźă 1ďź'G'ĺŚćććčŁ č˝˝ç樥ĺé˝ćGPLćç¸ĺŽšç莸ĺŻčŻďź'P'ĺŚćčŁ č˝˝äşäťťä˝çä¸ć樥ĺă 沥ć樥ĺMODULE_LICENSEćč 希ćinsmod莤为ćŻä¸GPLä¸ç¸ĺŽšççMODULE_LICENSEç樥ĺ袍 莤ĺŽćŻä¸ćçă 2ďź'F'ĺŚććäťťä˝éčżâinsmod -fâ袍基ĺśčŁ č˝˝ç樥ĺďź' 'ĺŚććć樥ĺé˝č˘ŤćŁĺ¸¸čŁ č˝˝ă 3ďź'S'ĺŚćoopsĺçĺ¨SMPĺ ć ¸ä¸ďźčżčĄäşć˛ĄćčŻćĺŽĺ ¨čżčĄĺ¤ĺ¤çĺ¨ç祏䝜ă ĺ˝ĺčżç§ ć ĺľäť éäşĺ ç§ä¸ćŻćSMPçééžĺ¤çĺ¨ă 4ďź'R'ĺŚć樥ĺéčżâinsmod -fâ袍基ĺśčŁ č˝˝ďź' 'ĺŚććć樥ĺé˝č˘ŤćŁĺ¸¸čŁ č˝˝ă 5ďź'M'ĺŚćäťťä˝ĺ¤çĺ¨ćĽĺäşćşĺ¨ćŁćĽĺźĺ¸¸ďź' 'ĺŚć沥ćĺçćşĺ¨ćŁćĽĺźĺ¸¸ă 6ďź'B'ĺŚć饾éćžĺ˝ć°ĺç°äşä¸ä¸Şé误ç饾ĺźç¨ćč ä¸äşéé˘ćç饾ć ĺżă 7ďź'U'ĺŚćç¨ćˇćč ç¨ćˇĺşç¨ç¨ĺşçšĺŤčŻˇćąčŽžç˝ŽćąĄćć ĺżďźĺŚĺ' 'ă 8ďź'D'ĺŚćĺ ć ¸ĺĺćťćďźćŻĺŚćOOPSćč BUGă 使ç¨'Tainted: 'ĺ珌串ç丝čŚĺĺ ćŻčŚĺčŻĺ ć ¸č°čŻč ďźčżćŻĺŚćŻä¸ä¸Şĺš˛ĺçĺ ć ¸äşŚćĺ çäşäťťä˝çä¸ćŁĺ¸¸çäşă湥ććŻć°¸äš çďźĺłä˝żĺşéç樥ĺ塲çťč˘Ťĺ¸č˝˝äşďźćąĄćĺźäťçśĺĺ¨ďź 䝼襨ćĺ ć ¸ä¸ĺĺźĺžäżĄäťťă