Oops in smbfs, 1.99.7.

Scott Laird (scott@laird.com)
Tue, 28 May 1996 10:43:48 -0700


I just received a kernel oops while running find(3) on a mounted smbfs
filesystem under pre2.0.7. Here are the errors I received:

smb_receive_raw: Received length (3131) > max_xmit (2920)!
smb_receive: receive error: -5
smb_receive_raw: Received length (3131) > max_xmit (2920)!
smb_receive: receive error: -5
smb_receive_raw: Received length (3131) > max_xmit (2920)!
smb_receive: receive error: -5
Unable to handle kernel NULL pointer dereference at virtual address c000000c
current->tss.cr3 = 0063e000, %cr3 = 0063e000
*pde = 00102067
*pte = 00000027
Oops: 0000
CPU: 0
EIP: 0010:[<001709ed>]
EFLAGS: 00010246
eax: 00000000 ebx: 00000001 ecx: 00000000 edx: 006d19b8
esi: 00000000 edi: 006d1964 ebp: 00000001 esp: 006d1954
ds: 0018 es: 0018 fs: 0018 gs: 002b ss: 0018
Process find (pid: 10732, process nr: 71, stackpage=006d1000)
Stack: 006d19b8 00000000 0078c018 0000002b 006d19b8 00000001 00000000 00000000
006d1964 00000001 00000000 0010c38c 0000000f 00170ae7 00000000 006d19b8
00000001 00000001 00000002 00000000 00000000 0078c0b4 01171e10 0078c018
Call Trace: [<0010c38c>] [<00170ae7>] [<001460d0>] [<001460e5>] [<001772bd>] [<00146349>] [<00146bcb>]
[<001405c8>] [<001366f6>] [<00144545>] [<0014d1f2>] [<001710aa>] [<0016e672>] [<0016f726>] [<0016f8ed>]
[<001723a0>] [<0014cdb2>] [<00149a11>] [<0014fb07>] [<00137613>] [<001412ae>] [<00136548>] [<00143e86>]
[<00144304>] [<0014d8b6>] [<00170a03>] [<00170a73>] [<00170d67>] [<00170da1>] [<00171231>] [<00121431>]
[<00121e11>] [<00172aea>] [<00172f02>] [<00172f3e>] [<0010f002>] [<00121431>] [<00171862>] [<00121a1a>]
[<00129d70>] [<00129b7e>] [<0012a277>] [<0012b7c0>] [<0012b6c8>] [<0010a3a2>]
Code: 8b 46 0c 51 8b 7c 24 4c 57 55 53 8d 54 24 28 52 56 8b 40 44
Aiee, killing interrupt handler
general protection: 0000
CPU: 0
EIP: 0010:[<001709fe>]
EFLAGS: 00010246
eax: f000ef6f ebx: 00000001 ecx: 00000000 edx: 001d87c4
esi: 00000000 edi: 00000002 ebp: 00000001 esp: 001d8794
ds: 0018 es: 0018 fs: 0018 gs: 0018 ss: 0018
Process swapper (pid: 0, process nr: 0, stackpage=001d69cc)
Stack: 00000000 001d87c4 00000001 00000001 00000002 00000000 001d8810 00000000
0078c018 0000002b 001d8810 00000001 00000000 00000000 001d87bc 00000001
00000000 0078c018 0161de7c 00170ae7 00000000 001d8810 00000001 00000001
Call Trace: [<00170ae7>] [<001460e5>] [<00177394>] [<00146349>] [<00146bcb>] [<00130000>] [<0013eb6c>]
[<0014cdb2>] [<0013e201>] [<00137814>] [<0011626f>] [<0010a32b>] [<00109554>] [<0010a3a2>] [<00109288>]
[<001b0018>] [<00109113>]
Code: 8b 40 44 ff d0 83 c4 18 5b 5e 5f 5d 83 c4 24 c3 90 90 83 ec
Aiee, killing interrupt handler
kfree of non-kmalloced memory: 001d8a0c, next= 00000000, order=0
kfree of non-kmalloced memory: 001d89fc, next= 00000000, order=0
kfree of non-kmalloced memory: 001d8e30, next= 00000000, order=0
idle task may not sleep
idle task may not sleep
idle task may not sleep
idle task may not sleep
idle task may not sleep

The relevant portion of System.map:

0017092c T smb_proc_connect
00170974 T smb_proc_disconnect
00170998 t _recvfrom
00170a10 t _send
00170a80 t smb_data_callback

I've been having problems with the SMBfs for most of the 1.3 series,
but I haven't used it in a while, and I'd hoped it was fixed recently.
Apparently not :-). I don't know enough about SMB to really fix this
myself. Could someone who knows something about it take a look?

Scott