2009年06月23日 Unable to handle kernel paging request at virtual address ... etc [長年日記]
_ Unable to handle kernel paging request at virtual address ... etc
lib100サーバにまたヤバゲなメッセージが残されている。
Jun 22 17:16:59 lib100 kernel: Unable to handle kernel paging request at virtual address 655f22b7 Jun 22 17:16:59 lib100 kernel: printing eip: Jun 22 17:16:59 lib100 kernel: c0142200 Jun 22 17:16:59 lib100 kernel: *pde = 00000000 Jun 22 17:16:59 lib100 kernel: Oops: 0000 Jun 22 17:16:59 lib100 kernel: CPU: 0 Jun 22 17:16:59 lib100 kernel: EIP: 0010:[<c0142200>] Not tainted Jun 22 17:16:59 lib100 kernel: EFLAGS: 00210246 Jun 22 17:16:59 lib100 kernel: eax: 655f228b ebx: c3ffec20 ecx: 00008000 edx: 00000000 Jun 22 17:16:59 lib100 kernel: esi: ffffffe2 edi: 00008001 ebp: c158df84 esp: c158df50 Jun 22 17:16:59 lib100 kernel: ds: 0018 es: 0018 ss: 0018 Jun 22 17:16:59 lib100 kernel: Process ruby (pid: 21691, stackpage=c158d000) Jun 22 17:16:59 lib100 kernel: Stack: 00000000 00000000 00000004 c04e3ca0 00008000 c198e000 400d23e0 bffee0ac Jun 22 17:16:59 lib100 kernel: c0136ebe c198e000 00008001 000001b6 c158df84 c04e3ca0 c10c52e0 400d23e0 Jun 22 17:16:59 lib100 kernel: c0140b0a 00000006 00000001 00000001 00000006 00000006 c013725b c198e000 Jun 22 17:16:59 lib100 kernel: Call Trace: [<c0136ebe>] [<c0140b0a>] [<c013725b>] [<c0108963>] Jun 22 17:16:59 lib100 kernel: Jun 22 17:16:59 lib100 kernel: Code: f6 40 2c 01 0f 84 ec fc ff ff f7 c7 02 00 00 00 0f 84 e0 fc
メモリーの障害か、swapエリアのI/O error辺りか...と思い、予備のメモリと交換して、mkswap -c /dev/hda?でもするかと考えてた矢先に、このtDiaryが...
Plugin Error Errors in plugins? Retry to Update or Configure. TDiary::PluginError Plugin error in '50sp.rb'. Plugin error in 'misc/plugin/amazon.rb'. Input/output error - /usr/lib/ruby/1.8/rexml/xpath_parser.rb (plugin/50sp.rb):129:in `load_plugin'
みたいなエラーを表示して動かなくなっていた。 /usr/lib/ruby/1.8/rexml/xpath_parser.rb を cat で表示させると
cat: /usr/lib/ruby/1.8/rexml/xpath_parser.rb: Input/output error
確かにI/O error状態で、さらに
# ls -al /usr/lib/ruby/1.8/rexml/xpath_parser.rb -rw-r--r-- 1 root root 3364114146225291585 1993-12-03 08:59 /usr/lib/ruby/1.8/rexml/xpath_parser.rb
と、脅威のファイルサイズを表示してくれた。ファイルの中身を確認すると、末尾に延々と NULL がくっついている感じ。
mv xpath_parser.rb xpath_parser.rb.ORG cat xpath_parser.rb.ORG >xpath_parser.rb
catではきっちり32KByte読み出したところで I/O Error発生。
vi xpath_parser.rb
にて xpath_parser.rb のおケツにくっついた NULL を削除したら tDiary は復活した。後は、 fsck をかけて、超巨大な xpath_parser.rb.ORG がどうなるかだな。
それと、気になるのは
Unable to handle kernel paging request at virtual address
と
-rw-r--r-- 1 root root 3364114146225291585 1993-12-03 08:59 /usr/lib/ruby/1.8/rexml/xpath_parser.rb
の関係。鶏が先か、卵が先なのか...。
_ Unable to handle kernel paging request at virtual address ... etc(2)
fsckをかけてみると、やはりボコボコと修復されていった。そして、超巨大ファイルもグッとシュリンクされていた。少しは末尾に NULL が残っていたが。
不安は山盛りだがとりあえずこの状態で様子を見てみる。