oops on rmmod sb! [2.1.90-3]

James Mastros (root@jennifer-unix.dyn.ml.org)
Mon, 16 Mar 1998 15:58:30 -0500 (EST)


I just got the following oops whilst doing a "rmmod sb":

kfree: Bad obj f285f000
Unable to handle kernel NULL pointer dereference at virtual address 00000000
current->tss.cr3 = 01676000, %cr3 = 01676000
*pde = 00000000
Oops: 0002
CPU: 0
EIP: 0010:[<f0120cef>]
EFLAGS: 00010286
eax: 0000001b ebx: f285f000 ecx: 0000000d edx: 00000000
esi: f285f000 edi: 00000000 ebp: effffaec esp: f129df60
ds: 0018 es: 0018 ss: 0018
Process rmmod (pid: 5393, process nr: 45, stackpage=f129d000)
Stack: f018f4e7 f285f000 f285f000 f286c000 00000000 effffaec 00000000 00000000
f286f37a f285f000 f286c000 f286d89f f2872050 f011764c f286c000 fffffff0
f129dfbc f011696e f286c000 00000000 f129c000 00000000 08068ae0 f0676000
Call Trace: [<f018f4e7>] [<f285f000>] [<f285f000>] [<f286c000>] [<f286f37a>] [<f285f000>] [<f286c000>]
[<f286d89f>] [<f2872050>] [<f011764c>] [<f286c000>] [<f011696e>] [<f286c000>] [<f0109ab8>]
Code: c7 05 00 00 00 00 00 00 00 00 83 c4 08 5b 5e 5f 5d 83 c4 08

2964 symbols from /boot/System.map-2.1.90-3

EIP: 0xf0120cef T kfree+0x1bb/0x1d0
trace: 0xf018f4e7 T stext_lock+0x2b07/0xefa0
trace: 0xf285f000 ???
trace: 0xf285f000 ???
trace: 0xf286c000 ???
trace: 0xf286f37a ???
trace: 0xf285f000 ???
trace: 0xf286c000 ???
trace: 0xf286d89f ???
trace: 0xf2872050 ???
trace: 0xf011764c t free_module+0x20/0x9c
trace: 0xf286c000 ???
trace: 0xf011696e T sys_delete_module+0x14a/0x1f0
trace: 0xf286c000 ???
trace: 0xf0109ab8 T system_call+0x38/0x40
code: 00000000 <oops> movl $0x0,0x0
code: 0000000a <oops+a> addl $0x8,%esp
code: 0000000d <oops+d> popl %ebx
code: 0000000e <oops+e> popl %esi
code: 0000000f <oops+f> popl %edi
code: 00000010 <oops+10> popl %ebp
code: 00000011 <oops+11> addl $0x8,%esp

(Unfornatly, I don't have a loadmap for sound or uart401.)

Interestingly, lsmod now reports:
Module Size Used by
bsd_comp 3948 1 (autoclean)
ppp 20356 1 (autoclean) [bsd_comp]
slhc 4744 1 (autoclean) [ppp]
lsmod: QM_INFO: No such file or directory

cat /proc/modules gives:
bsd_comp 3948 1 (autoclean)
ppp 20356 1 (autoclean) [bsd_comp]
slhc 4744 1 (autoclean) [ppp]
sb 24892 0 (deleted)
uart401 5924 0 [sb]
sound 68428 0 (autoclean) [sb uart401]
serial 19824 2 (autoclean)
nls_iso8859-1 2020 2 (autoclean)
nls_cp437 3544 2 (autoclean)
vfat 15368 2 (autoclean)
fat 25460 2 (autoclean) [vfat]
unix 10884 21 (autoclean)

(This kernel is VERY modular, to test kmod: BTW, I can't get kmod to return
errors from modprobe.) (Also, note that uart401 and sound both list sb as
depending upon them.)

CONFIG_MAX_MEMSIZE=256, machine has 32M memory. (BTW - Is there any
advantage to using CONFIG_MAX_MEMSIZE<1024?) The distribution is an odd mix
of Slackware 3.2 and RedHat 5.0.

modprobe sb just completed without comment, but no change. Sound is
behaiving as expected (IE giving errors as if sb was not loaded, sndstat
reports "System clock" as the only device.)

-=- James Mastros

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu