oops during normal swap

Christoph Rohland hans-christoph.rohland en sap.com
Vie Ene 28 14:07:50 CST 2000


Hi,

After some rereading shm swap code I rewrote my swap test program to
use anonymous mmap instead of shm to drive my machine into swapping
and viola:

shrink_mmap: unknown LRU page!
kernel BUG at swap_state.c:49!
invalid operand: 0000
CPU:    0
EIP:    0010:[<c013a994>]
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010296
eax: 0000001f   ebx: c403d984   ecx: c028229c   edx: c028229c
esi: 00000000   edi: 03014000   ebp: 00000000   esp: f79b5da4
ds: 0018   es: 0018   ss: 0018
Process sendmail (pid: 518, stackpage=f79b5000)
Stack: c022e704 c022e9ef 00000031 c403d984 c013ad7b c403d984 03014000 0180a500 
       00000000 03014a00 c012c912 03014000 00000000 f79b4000 00000000 00000000 
       f79b4000 00000010 00030140 c012c9ec 03014a00 f79a0ae0 4017d040 f79b4000 
Call Trace: [<c022e704>] [<c022e9ef>] [<c013ad7b>] [<c012c912>] [<c012c9ec>]
       [<c0116a99>] [<c010d121>] 
Code: 0f 0b 83 c4 0c 8d b4 26 00 00 00 00 83 7b 08 00 74 1a 6a 33 

>>EIP; c013a994 <add_to_swap_cache+2c/70>   <=====
Trace; c022e704 <tvecs+3360/733c>
Trace; c022e9ef <tvecs+364b/733c>
Trace; c013ad7b <read_swap_cache_async+b3/f8>
Trace; c012c912 <swapin_readahead+9a/e8>
Trace; c012c9ec <do_swap_page+8c/35c>
Trace; c0116a99 <do_page_fault+181/4c8>
Trace; c010d121 <error_code+2d/34>
Code;  c013a994 <add_to_swap_cache+2c/70>
00000000 <_EIP>:
Code;  c013a994 <add_to_swap_cache+2c/70>   <=====
   0:   0f 0b                     ud2a      <=====
Code;  c013a996 <add_to_swap_cache+2e/70>
   2:   83 c4 0c                  addl   $0xc,%esp
Code;  c013a999 <add_to_swap_cache+31/70>
   5:   8d b4 26 00 00 00 00      leal   0x0(%esi,1),%esi
Code;  c013a9a0 <add_to_swap_cache+38/70>
   c:   83 7b 08 00               cmpl   $0x0,0x8(%ebx)
Code;  c013a9a4 <add_to_swap_cache+3c/70>
  10:   74 1a                     je     2c <_EIP+0x2c> c013a9c0 <add_to_swap_cache+58/70>
Code;  c013a9a6 <add_to_swap_cache+3e/70>
  12:   6a 33                     pushl  $0x33

kernel BUG at page_alloc.c:83!
invalid operand: 0000
CPU:    6
EIP:    0010:[<c013a0ae>]                                     
EFLAGS: 00010296                                              
eax: 0000001f   ebx: c403d984   ecx: c028229c   edx: c028229c 
esi: c3ea9668   edi: 00000000   ebp: c01469b5   esp: c1147cc4 
ds: 0018   es: 0018   ss: 0018
Process klogd (pid: 348, stackpage=c1147000)
Stack: c022e344 c022e5d6 00000053 c3ea9620 c3ea9668 c3ea9620 c01469b5 c0285bb4 
       00000286 00000023 c0285bac c01469b5 c0146a99 c3ea9620 00001000 c3ea9620 
       00001000 00000006 00000003 c3ea9620 c0144f12 c403d984 c403d984 c403d984 
Call Trace: [<c022e344>] [<c022e5d6>] [<c01469b5>] [<c01469b5>] [<c0146a99>]
       [<c012cb7c>] [<c0143e56>] [<c013aa4b>] [<c012d621>] [<c0116a99>]
       [<c011e500>] [<c0183c4c>] [<c011ed1d>] [<c01687e5>] [<c0141256>]
Code: 0f 0b 83 c4 0c 8b 43 18 a8 01 74 16 6a 55 68 d6 e5 22 c0 68 

>>EIP; c013a0ae <__free_pages_ok+5e/2a4>   <=====
Trace; c022e344 <tvecs+2fa0/733c>
Trace; c022e5d6 <tvecs+3232/733c>
Trace; c01469b5 <try_to_free_buffers+1d5/38c>
Trace; c01469b5 <try_to_free_buffers+1d5/38c>
Trace; c0146a99 <try_to_free_buffers+2b9/38c>
Trace; c012cb7c <do_swap_page+21c/35c>
Trace; c0143e56 <end_buffer_io_async+13a/194>
Trace; c013aa4b <__delete_from_swap_cache+73/7c>
Trace; c012d621 <handle_mm_fault+4c1/6ac>
Trace; c0116a99 <do_page_fault+181/4c8>
Trace; c011e500 <do_syslog+410/9f0>
Trace; c0183c4c <sock_write+9c/a8>
Trace; c011ed1d <printk+1f5/204>
Trace; c01687e5 <kmsg_read+11/18>
Trace; c0141256 <sys_read+106/128>
Code;  c013a0ae <__free_pages_ok+5e/2a4>
00000000 <_EIP>:
Code;  c013a0ae <__free_pages_ok+5e/2a4>   <=====
   0:   0f 0b                     ud2a      <=====
Code;  c013a0b0 <__free_pages_ok+60/2a4>
   2:   83 c4 0c                  addl   $0xc,%esp
Code;  c013a0b3 <__free_pages_ok+63/2a4>
   5:   8b 43 18                  movl   0x18(%ebx),%eax
Code;  c013a0b6 <__free_pages_ok+66/2a4>
   8:   a8 01                     testb  $0x1,%al
Code;  c013a0b8 <__free_pages_ok+68/2a4>
   a:   74 16                     je     22 <_EIP+0x22> c013a0d0 <__free_pages_ok+80/2a4>
Code;  c013a0ba <__free_pages_ok+6a/2a4>
   c:   6a 55                     pushl  $0x55
Code;  c013a0bc <__free_pages_ok+6c/2a4>
   e:   68 d6 e5 22 c0            pushl  $0xc022e5d6
Code;  c013a0c1 <__free_pages_ok+71/2a4>
  13:   68 00 00 00 00            pushl  $0x0

The stack is not complete, my serial console truncated the lines.

This is on 2.3.40+smp-41-A2 from mingo with HIGHMEM enabled and 8GB 8way.

I am restarting the tests now with HIGHMEM disabled.

Greetings
		Christoph

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



Más información sobre la lista de distribución Ayuda