oops na dm-mirror

The Undefined undefine w aramin.net
Czw, 16 Cze 2005, 17:33:55 CEST


przy przenoszeniu danych na nowy dysk:
Unable to handle kernel paging request at virtual address f8967000
 printing eip:
f896898a
*pgd =   3c9001
*pmd =  18eb063
*pte =        0
Oops: 0000 [#1]
Modules linked in: dm_mirror sd_mod scsi_mod capability commoncap
8139too mii md5 ipv6 dm_mod it87 eeprom i2c_sensor i2c_i
sa i2c_sis96x i2c_savage4 i2c_algo_bit i2c_core loop sch_htb sch_sfq xfs
exportfs ide_disk sis5513 ide_core
CPU:    0
EIP:    0060:[<f896898a>]    Not tainted VLI
EFLAGS: 00010246   (2.6.11.5-3)
EIP is at core_in_sync+0xa/0x20 [dm_mirror]
eax: e3d07660   ebx: f8966000   ecx: 00000000   edx: 00008000
esi: ce012980   edi: f28db980   ebp: df5977a8   esp: df5977a4
ds: 007b   es: 007b   ss: 0068
Process install (pid: 12140, threadinfo=df596000 task=c4f4e060)
Stack: f896c5e0 df5977d8 f896a58a 00000000 0000000a 00008000 00000000 c018b4e1
       f1400e24 00000000 e985abe0 f1400e1c ce012980 df5977f4 f88a82ee 02000000
       f88d10f0 00000000 df597854 f1400e2c df597848 f88a854a 00000000 00000001
Call Trace:
 [<c013a34a>] show_stack+0x7a/0x90
 [<c013a4cd>] show_registers+0x14d/0x1b0
 [<c013a692>] die+0xc2/0x140
 [<c014af85>] do_page_fault+0x315/0x77d
 [<c0139f2f>] error_code+0x4f/0x60
 [<f896a58a>] mirror_map+0x8a/0x100 [dm_mirror]
 [<f88a82ee>] __map_bio+0x3e/0xf0 [dm_mod]
 [<f88a854a>] __clone_and_map+0xca/0x2f0 [dm_mod]
 [<f88a8807>] __split_bio+0x97/0x100 [dm_mod]
 [<f88a88d4>] dm_request+0x64/0x90 [dm_mod]
 [<c024f180>] generic_make_request+0x170/0x220
 [<f88a854a>] __clone_and_map+0xca/0x2f0 [dm_mod]
 [<f88a8807>] __split_bio+0x97/0x100 [dm_mod]
 [<f88a88d4>] dm_request+0x64/0x90 [dm_mod]
 [<c024f180>] generic_make_request+0x170/0x220
 [<c024f287>] submit_bio+0x57/0xf0
 [<f89389f8>] _pagebuf_ioapply+0x1a8/0x280 [xfs]
 [<f8938b48>] pagebuf_iorequest+0x78/0x130 [xfs]
 [<f8938710>] pagebuf_iostart+0x70/0xa0 [xfs]
 [<f8938090>] xfs_buf_read_flags+0x70/0x80 [xfs]
 [<f892b38a>] xfs_trans_read_buf+0x14a/0x2e0 [xfs]
 [<f89103d7>] xfs_ialloc_read_agi+0x87/0x111 [xfs]
 [<f890f021>] xfs_ialloc_ag_select+0x181/0x280 [xfs]
 [<f890f9b1>] xfs_dialloc+0x891/0x8b0 [xfs]
 [<f89159e7>] xfs_ialloc+0x57/0x490 [xfs]
 [<f892c584>] xfs_dir_ialloc+0x74/0x250 [xfs]
 [<f8932809>] xfs_mkdir+0x269/0x650 [xfs]
 [<f893bd9b>] linvfs_mknod+0x2eb/0x380 [xfs]
 [<f893be55>] linvfs_mkdir+0x15/0x20 [xfs]
 [<c0194e15>] vfs_mkdir+0x95/0x110
 [<c0194f7a>] sys_mkdir+0xea/0x100
 [<c0138d79>] sysenter_past_esp+0x52/0x79
Code: 00 55 89 e5 53 8b 40 04 8b 58 1c 0f a3 13 19 c0 8b 1c 24 85 c0 0f 95 c0 c9 0f b6 c0 c3 8d 74 26 00 55 89 e5 53 8b 40 04 8b 58 20 <0f> a3 13 19 c0 8b 1c 24 85 c0 0f 95 c0 c9 0f b6 c0 c3 8d 74 26 

po zdekodowaniu:
>>EIP; f896898a <pg0+3853798a/3fbcd400>   <=====

>>eax; e3d07660 <pg0+238d6660/3fbcd400>
>>ebx; f8966000 <pg0+38535000/3fbcd400>
>>esi; ce012980 <pg0+dbe1980/3fbcd400>
>>edi; f28db980 <pg0+324aa980/3fbcd400>
>>ebp; df5977a8 <pg0+1f1667a8/3fbcd400>
>>esp; df5977a4 <pg0+1f1667a4/3fbcd400>

Trace; c013a34a <show_stack+7a/90>
Trace; c013a4cd <show_registers+14d/1b0>
Trace; c013a692 <die+c2/140>
Trace; c014af85 <do_page_fault+315/77d>
Trace; c0139f2f <error_code+4f/60>
Trace; f896a58a <pg0+3853958a/3fbcd400>
Trace; f88a82ee <pg0+384772ee/3fbcd400>
Trace; f88a854a <pg0+3847754a/3fbcd400>
Trace; f88a8807 <pg0+38477807/3fbcd400>
Trace; f88a88d4 <pg0+384778d4/3fbcd400>
Trace; c024f180 <generic_make_request+170/220>
Trace; f88a854a <pg0+3847754a/3fbcd400>
Trace; f88a8807 <pg0+38477807/3fbcd400>
Trace; f88a88d4 <pg0+384778d4/3fbcd400>
Trace; c024f180 <generic_make_request+170/220>
Trace; c024f287 <submit_bio+57/f0>
Trace; f89389f8 <pg0+385079f8/3fbcd400>
Trace; f8938b48 <pg0+38507b48/3fbcd400>
Trace; f8938710 <pg0+38507710/3fbcd400>
Trace; f8938090 <pg0+38507090/3fbcd400>
Trace; f892b38a <pg0+384fa38a/3fbcd400>
Trace; f89103d7 <pg0+384df3d7/3fbcd400>
Trace; f890f021 <pg0+384de021/3fbcd400>
Trace; f890f9b1 <pg0+384de9b1/3fbcd400>
Trace; f89159e7 <pg0+384e49e7/3fbcd400>
Trace; f892c584 <pg0+384fb584/3fbcd400>
Trace; f8932809 <pg0+38501809/3fbcd400>
Trace; f893bd9b <pg0+3850ad9b/3fbcd400>
Trace; f893be55 <pg0+3850ae55/3fbcd400>
Trace; c0194e15 <vfs_mkdir+95/110>
Trace; c0194f7a <sys_mkdir+ea/100>
Trace; c0138d79 <sysenter_past_esp+52/79>

This architecture has variable length instructions, decoding before eip
is unreliable, take these instructions with a pinch of salt.
Code;  f896895f <pg0+3853795f/3fbcd400>
00000000 <_EIP>:
Code;  f896895f <pg0+3853795f/3fbcd400>
   0:   00 55 89                  add    %dl,0xffffff89(%ebp)
Code;  f8968962 <pg0+38537962/3fbcd400>
   3:   e5 53                     in     $0x53,%eax
Code;  f8968964 <pg0+38537964/3fbcd400>
   5:   8b 40 04                  mov    0x4(%eax),%eax
Code;  f8968967 <pg0+38537967/3fbcd400>
   8:   8b 58 1c                  mov    0x1c(%eax),%ebx
Code;  f896896a <pg0+3853796a/3fbcd400>
   b:   0f a3 13                  bt     %edx,(%ebx)
Code;  f896896d <pg0+3853796d/3fbcd400>
   e:   19 c0                     sbb    %eax,%eax
Code;  f896896f <pg0+3853796f/3fbcd400>
  10:   8b 1c 24                  mov    (%esp),%ebx
Code;  f8968972 <pg0+38537972/3fbcd400>
  13:   85 c0                     test   %eax,%eax
Code;  f8968974 <pg0+38537974/3fbcd400>
  15:   0f 95 c0                  setne  %al
Code;  f8968977 <pg0+38537977/3fbcd400>
  18:   c9                        leave  
Code;  f8968978 <pg0+38537978/3fbcd400>
  19:   0f b6 c0                  movzbl %al,%eax
Code;  f896897b <pg0+3853797b/3fbcd400>
  1c:   c3                        ret    
Code;  f896897c <pg0+3853797c/3fbcd400>
  1d:   8d 74 26 00               lea    0x0(%esi),%esi
Code;  f8968980 <pg0+38537980/3fbcd400>
  21:   55                        push   %ebp
Code;  f8968981 <pg0+38537981/3fbcd400>
  22:   89 e5                     mov    %esp,%ebp
Code;  f8968983 <pg0+38537983/3fbcd400>
  24:   53                        push   %ebx
Code;  f8968984 <pg0+38537984/3fbcd400>
  25:   8b 40 04                  mov    0x4(%eax),%eax
Code;  f8968987 <pg0+38537987/3fbcd400>
  28:   8b 58 20                  mov    0x20(%eax),%ebx

This decode from eip onwards should be reliable
Code;  f896898a <pg0+3853798a/3fbcd400>
00000000 <_EIP>:
Code;  f896898a <pg0+3853798a/3fbcd400>   <=====
   0:   0f a3 13                  bt     %edx,(%ebx)   <=====
Code;  f896898d <pg0+3853798d/3fbcd400>
   3:   19 c0                     sbb    %eax,%eax
Code;  f896898f <pg0+3853798f/3fbcd400>
   5:   8b 1c 24                  mov    (%esp),%ebx
Code;  f8968992 <pg0+38537992/3fbcd400>
   8:   85 c0                     test   %eax,%eax
Code;  f8968994 <pg0+38537994/3fbcd400>
   a:   0f 95 c0                  setne  %al
Code;  f8968997 <pg0+38537997/3fbcd400>
   d:   c9                        leave  
Code;  f8968998 <pg0+38537998/3fbcd400>
   e:   0f b6 c0                  movzbl %al,%eax
Code;  f896899b <pg0+3853799b/3fbcd400>
  11:   c3                        ret    
Code;  f896899c <pg0+3853799c/3fbcd400>
  12:   8d                        .byte 0x8d
Code;  f896899d <pg0+3853799d/3fbcd400>
  13:   74 26                     je     3b <_EIP+0x3b>


jajko 2.6.11.5-3, arch athlon.
ma ktoś jakieś pomysły? ;)


-- 
Andrzej 'The Undefined' Dopierała
UNIX && Linux administrator,      Adam Mickiewicz University WMiI
PLD Linux Developer      HomePage: http://andrzej.dopierala.name/
JID: undefine w piastlan.net         e-mail: andrzej w dopierala.name



Więcej informacji o liście dyskusyjnej pld-kernel