2.1.23 insmod "Oops"

Bob Tracy - TDS (rct@tracy-tds.wlk.com)
Tue, 28 Jan 1997 14:04:18 -0600 (CST)


Kernel: 2.1.23, Modutils: 2.1.23, libc: 5.4.7, gcc: 2.7.2.1
Modules: fat.o, msdos.o
(kerneld running)

I can consistently generate the following Oops by attempting to
mount a msdos filesystem (ksymoops output following):

Oops: 0000
CPU: 0
EIP: 0010:[<c0116580>]
EFLAGS: 00010246
eax: 00000000 ebx: c280e010 ecx: ffffffff edx: 00000020
esi: 6c613261 edi: 6c613261 ebp: 000003ef esp: c16dff68
ds: 0018 es: 0018 ss: 0018
Process insmod (pid: 97, process nr: 29, stackpage=c16df000)
Stack: fffffffe 08053608 00000400 c2809000 00000000 00000000 00000400 c280e2ff
08053700 080539f7 0000001f c01168b5 c2809000 08053608 00000011 bffffdfc
c168e810 00000400 bffffdfc bffffdb8 c010a6c0 c1659000 c010a588 08053500
Call Trace: [<c2809000>] [<c280e2ff>] [<c01168b5>] [<c2809000>] [<c010a6c0>] [<c010a588>]
Code: f2 ae f7 d1 49 89 ce 8d 6c 2e 01 ff 44 24 28 83 c3 08 39 54

"ksymoops" had this to say:

Using `../System.map' to map addresses to symbols.

>>EIP: c0116580 <qm_symbols+1f0/250>
Trace: c2809000
Trace: c280e2ff
Trace: c01168b5 <sys_query_module+1d5/210>
Trace: c2809000
Trace: c010a6c0 <error_code+30/40>
Trace: c010a588 <system_call+38/40>

Code: c0116580 <qm_symbols+1f0/250> repnz scasb %es:(%edi),%al
Code: c0116582 <qm_symbols+1f2/250> notl %ecx
Code: c0116584 <qm_symbols+1f4/250> decl %ecx
Code: c0116585 <qm_symbols+1f5/250> movl %ecx,%esi
Code: c0116587 <qm_symbols+1f7/250> leal 0x1(%esi,%ebp,1),%ebp
Code: c011658b <qm_symbols+1fb/250> incl 0x28(%esp,1)
Code: c011658f <qm_symbols+1ff/250> addl $0x8,%ebx
Code: c0116592 <qm_symbols+202/250> cmpl %edx,0xffffff90(%eax,%eax,1)
Code: c0116596 <qm_symbols+206/250> nop
Code: c0116597 <qm_symbols+207/250> nop

The weirdness doesn't seem to apply to all modules. The ppp.o module
installs just fine when I run pppd.

-- 
Bob Tracy		| "C program.  C program run.  C program crash.
AFIWC/AFCERT		|  C programmer quit."
rct@merkin.csap.af.mil	|	-- Unknown