[DRBD-user] kernel oops

Kees Cook kees at osdl.org
Thu Mar 18 20:25:23 CET 2004

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


I have no idea if this is the result of building it monolithic or not, but 
the instant I tried to run "mke2fs" on the configured /dev/nb0, I 
hit this BUG assert.

Which lands in lc_get, on

        BUG_ON(!lc->nr_elements);


kernel BUG at drivers/block/drbd/lru_cache.c:207!
invalid operand: 0000 [#1]
CPU:    1
EIP:    0060:[<c027e1f5>]    Not tainted
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010046
eax: d080f000   ebx: d080f000   ecx: d080d000   edx: 00000000
esi: 00000000   edi: c131a000   ebp: c1373bc0   esp: c1373bac
ds: 007b   es: 007b   ss: 0068
Stack: c027df35 d080d000 c1372000 00000000 c131a000 c1373c10 c027bcd3 d080f000 
       00000000 00000000 c1373bf0 00000000 00000046 00000000 67027483 10100000 
       00000000 20000000 c09de608 00000000 00000086 c1318800 c131a000 c131e400 
 [<c027df35>] lc_find+0x25/0x60
 [<c027bcd3>] drbd_al_begin_io+0x73/0x2a0
 [<c027b88e>] drbd_make_request_common+0x19e/0x400
 [<c0143c20>] mempool_alloc+0x80/0x180
 [<c027bb5a>] drbd_make_request_26+0x6a/0x6c
 [<c02510a9>] generic_make_request+0x159/0x1e0
 [<c016833a>] bio_alloc+0xda/0x1c0
 [<c01678d6>] submit_bh+0xa6/0x210
 [<c0251183>] submit_bio+0x53/0xa0
 [<c0165c58>] __block_write_full_page+0x258/0x460
 [<c016777b>] block_write_full_page+0xfb/0x120
 [<c016adb0>] blkdev_get_block+0x0/0x60
 [<c016af30>] blkdev_writepage+0x20/0x30
 [<c016adb0>] blkdev_get_block+0x0/0x60
 [<c014c76d>] shrink_list+0x45d/0x7a0
 [<c014cc80>] shrink_cache+0x1d0/0x3b0
 [<c014d583>] shrink_zone+0xb3/0xc0
 [<c014d9c0>] balance_pgdat+0x1a0/0x230
 [<c014db61>] kswapd+0x111/0x120
 [<c01254d0>] autoremove_wake_function+0x0/0x50
 [<c010b386>] ret_from_fork+0x6/0x14
 [<c01254d0>] autoremove_wake_function+0x0/0x50
 [<c014da50>] kswapd+0x0/0x120
 [<c010911d>] kernel_thread_helper+0x5/0x18
Code: 0f 0b cf 00 a0 e5 43 c0 e9 03 ff ff ff 0f 0b ce 00 a0 e5 43 


>>EIP; c027e1f5 <lc_get+115/130>   <=====

>>eax; d080f000 <_end+1024ef98/3fa3df98>
>>ebx; d080f000 <_end+1024ef98/3fa3df98>
>>ecx; d080d000 <_end+1024cf98/3fa3df98>
>>edi; c131a000 <_end+d59f98/3fa3df98>
>>ebp; c1373bc0 <_end+db3b58/3fa3df98>
>>esp; c1373bac <_end+db3b44/3fa3df98>

Code;  c027e1f5 <lc_get+115/130>
00000000 <_EIP>:
Code;  c027e1f5 <lc_get+115/130>   <=====
   0:   0f 0b                     ud2a      <=====
Code;  c027e1f7 <lc_get+117/130>
   2:   cf                        iret   
Code;  c027e1f8 <lc_get+118/130>
   3:   00 a0 e5 43 c0 e9         add    %ah,0xe9c043e5(%eax)
Code;  c027e1fe <lc_get+11e/130>
   9:   03 ff                     add    %edi,%edi
Code;  c027e200 <lc_get+120/130>
   b:   ff                        (bad)  
Code;  c027e201 <lc_get+121/130>
   c:   ff 0f                     decl   (%edi)
Code;  c027e203 <lc_get+123/130>
   e:   0b ce                     or     %esi,%ecx
Code;  c027e205 <lc_get+125/130>
  10:   00 a0 e5 43 00 00         add    %ah,0x43e5(%eax)



-- 
Kees Cook
Open Source Development Lab
kees at osdl.org



More information about the drbd-user mailing list