OOPS: 2.2.9 find_buffer (also 2.2.7)

Dave Airlie (airlied@csn.ul.ie)
Thu, 27 May 1999 19:53:37 +0100 (IST)


Got the following decoded oops on a

Gateway P120, 32MB RAM, hda: 16GB IBM, hdb: 1GB West Dig, hdc:8x CDROM

with 2.2.7, and 2.2.9 on RH6.0,

Also below is the gdb disassemble output from it ..

I also sometimes get a similiar oops from apache at bootup, this one was
from mount at bootup,..

If any more info is required please mail me and I'll get it,

Dave.

Unable to handle kernel NULL pointer dereference at virtual address 00000004
current->tss.cr3 = 00316000, %cr3 = 00316000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c0124198>]
EFLAGS: 00010202
eax: 00000004 ebx: 00000213 ecx: 00000302 edx: 00000004
esi: 00000200 edi: 00000213 ebp: 00000302 esp: c0605bf8
ds: 0018 es: 0018 ss: 0018
Process mount (pid: 348, process nr: 8, stackpage=c0605000)
Stack: c01241d3 00000302 00000213 00000200 c012443a 00000302 00000213 00000200
00000000 c008f000 00000302 00000213 c0605c2c c012475a 00000302 00000213
00000200 c008f000 c283a0a3 00000302 00000213 00000200 0000001e c008f000
Call Trace: [<c01241d3>] [<c012443a>] [<c012475a>] [<c283a0a3>] [<c283e4aa>] [<c283e767>] [<c2844b60>]
[<c283e9ca>] [<c283d6d9>] [<c28447b3>] [<c2844b60>] [<c012eda1>] [<c012ee78>] [<c283d265>] [<c012819a>]
[<c01073c4>] [<c010f9cb>] [<c011552b>] [<c0115de2>] [<c2842552>] [<c2844a20>] [<c0126370>] [<c01267cd>]
[<c28447ce>] [<c0126c90>] [<c28447ce>] [<c2844a20>] [<c01086dc>]
Code: 8b 00 39 5a 04 75 11 39 72 08 75 0c 66 39 4a 0c 75 06 89 d0

>>EIP: c0124198 <find_buffer+28/4c>
Trace: c01241d3 <get_hash_table+17/24>
Trace: c012443a <getblk+1e/144>
Trace: c012475a <bread+1a/70>
Trace: c283a0a3 <fat_bread+53/114>
Trace: c283e4aa <raw_scan_sector+1e/290>
Trace: c283e767 <raw_scan_root+4b/70>
Trace: c2844b60 <cleanup_module+3a0/188c>
Trace: c283e9ca <fat_subdirs+32/70>
Trace: c01073c4 <copy_thread+74/d4>
Trace: c28447ce <cleanup_module+e/188c>
Code: c0124198 <find_buffer+28/4c> 00000000 <_EIP>: <===
Code: c0124198 <find_buffer+28/4c> 0: 8b 00 movl (%eax),%eax <===
Code: c012419a <find_buffer+2a/4c> 2: 39 5a 04 cmpl %ebx,0x4(%edx)
Code: c012419d <find_buffer+2d/4c> 5: 75 11 jne c01241b0 <find_buffer+40/4c>
Code: c012419f <find_buffer+2f/4c> 7: 39 72 08 cmpl %esi,0x8(%edx)
Code: c01241a2 <find_buffer+32/4c> a: 75 0c jne c01241b0 <find_buffer+40/4c>
Code: c01241a4 <find_buffer+34/4c> c: 66 39 4a 0c cmpw %cx,0xc(%edx)
Code: c01241a8 <find_buffer+38/4c> 10: 75 06 jne c01241b0 <find_buffer+40/4c>
Code: c01241aa <find_buffer+3a/4c> 12: 89 d0 movl %edx,%eax

2 warnings issued. Results may not be reliable.

GNU gdb 4.17.0.11 with Linux support
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...
(no debugging symbols found)...
(gdb) disassemble find_buffer
Dump of assembler code for function find_buffer:
0xc0124170 <find_buffer>: pushl %esi
0xc0124171 <find_buffer+1>: xorl %eax,%eax
0xc0124173 <find_buffer+3>: pushl %ebx
0xc0124174 <find_buffer+4>: movl 0xc01caa44,%edx
0xc012417a <find_buffer+10>: movl 0x10(%esp,1),%ebx
0xc012417e <find_buffer+14>: movl 0xc(%esp,1),%ecx
0xc0124182 <find_buffer+18>: movw %cx,%ax
0xc0124185 <find_buffer+21>: xorl %ebx,%eax
0xc0124187 <find_buffer+23>: andl 0xc01a78a4,%eax
0xc012418d <find_buffer+29>: movl 0x14(%esp,1),%esi
0xc0124191 <find_buffer+33>: movl (%edx,%eax,4),%eax
0xc0124194 <find_buffer+36>: jmp 0xc01241b0 <find_buffer+64>
0xc0124196 <find_buffer+38>: movl %esi,%esi
0xc0124198 <find_buffer+40>: movl (%eax),%eax
0xc012419a <find_buffer+42>: cmpl %ebx,0x4(%edx)
0xc012419d <find_buffer+45>: jne 0xc01241b0 <find_buffer+64>
0xc012419f <find_buffer+47>: cmpl %esi,0x8(%edx)
0xc01241a2 <find_buffer+50>: jne 0xc01241b0 <find_buffer+64>
0xc01241a4 <find_buffer+52>: cmpw %cx,0xc(%edx)
0xc01241a8 <find_buffer+56>: jne 0xc01241b0 <find_buffer+64>
0xc01241aa <find_buffer+58>: movl %edx,%eax
0xc01241ac <find_buffer+60>: jmp 0xc01241b6 <find_buffer+70>
0xc01241ae <find_buffer+62>: movl %esi,%esi
0xc01241b0 <find_buffer+64>: movl %eax,%edx
0xc01241b2 <find_buffer+66>: testl %eax,%eax
0xc01241b4 <find_buffer+68>: jne 0xc0124198 <find_buffer+40>
0xc01241b6 <find_buffer+70>: popl %ebx
0xc01241b7 <find_buffer+71>: popl %esi
0xc01241b8 <find_buffer+72>: ret
0xc01241b9 <find_buffer+73>: leal 0x0(%esi),%esi
End of assembler dump.
(gdb)

------------ David Airlie, David.Airlie@ul.ie,airlied@skynet --------
Telecommunications Research Centre, ECE Dept, University of Limerick \
http://www.csn.ul.ie/~airlied -- Telecommunications Researcher \
--- TEL: +353-61-202695 -----------------------------------------------

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