Messages in this thread |  | | Date | Wed, 10 Jul 1996 10:03:23 +1000 (EST) | From | David Monro <> | Subject | 2.0.4 - exploding sound module |
| |
Got 2.0.4, fixed the missing ';', compiled as a module, rebooted, and the sound driver explodes. Now, the $64 question - how do I get the address=>symbol mapping for a module which is half installed? The addresses don't appear in /proc/ksyms, and the map from the module has all addresses starting from 0 of course. I have attatched the message and the ksymoops output, such as it is, just in case it helps somebody...
Interestingly enough, /dev/sndstat exists and works, but /dev/audio doesn't exist. The output from /dev/sndstat is a little strange:
Sound Driver:3.5.4-960630 (Tue Jul 9 01:34:01 EST 1996 davidm, Linux fuzzbox 2.0.0 #1 Mon Jun 10 17:05:02 EST 1996 i486) Kernel: Linux fuzzbox 2.0.4 #1 Tue Jul 9 02:14:17 EST 1996 i486 Config options: 0
Installed drivers: Type 1: OPL-2/OPL-3 FM Type 3: ProAudioSpectrum Type 2: Sound Blaster Type 7: SB MPU-401
Card config: (ProAudioSpectrum at 0x388 irq 5 drq 3) Sound Blaster at 0x220 irq 5 drq 1,6 SB MPU-401 at 0x330 irq 5 drq 0 OPL-2/OPL-3 FM at 0x388 drq 0
Audio devices:
Synth devices:
Midi devices:
Timers: 0: System clock
Mixers:
So it found the cards but then didn't get to working out which devices went where I suppose. (The ProAudioSpectrum code is in the module because I use this module on multiple machines - this hasn't caused any trouble before).
Oh, the sound system is a SoundBlaster16 Value edition, set up for irq 5, dma 1/6, midi at 330, FM at 388 as per usual.
Hope this helps,
David
The message: Oops: 0002 CPU: 0 EIP: 0010:[<0209e6d8>] EFLAGS: 00010202 eax: 00000005 ebx: 00000000 ecx: ffffffdf edx: 00000000 esi: 00000000 edi: 00000005 ebp: 015ecd94 esp: 015ecd60 ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018 Process insmod (pid: 98, process nr: 12, stackpage=015ec000) Stack: 00225658 000000ff 0010cd4d 00000005 00000000 015ecd94 015ecd94 00000005 00000000 00225658 0010bfb6 00000005 015ecd94 0019dbe0 ffffffdf 00108e00 00000005 00000000 00225658 00000000 00000018 000b0018 0040002b c20b002b Call Trace: [<0010cd4d>] [<0010bfb6>] [<0010cee7>] [<02090010>] [<0209e6c4>] [<0010cf58>] [<020b1000>] [<020a86a8>] [<020a86a8>] [<0209471e>] [<0209e6c4>] [<020a7cfb>] [<020b1000>] [<0209f2f6>] [<0209e6c4>] [<020a7cfb>] [<0209e55a>] [<0209e51e>] [<020a86a8>] [<02094dff>] [<020a86a8>] [<02094e49>] [<02094533>] [<02094643>] [<0011f0d3>] [<02094664>] [<00114fa4>] [<00115190>] [<0011fb0d>] [<020945c4>] [<02094664>] [<001118b8>] [<001118f0>] [<0011795b>] [<0010aa52>] Code: c7 43 40 01 00 00 00 85 db 0f 84 e4 00 00 00 39 43 24 0f 85 Aiee, killing interrupt handler
And the trace: Using `/boot/newlinux.map' to map addresses to symbols.
Trace: 10cd4d <do_IRQ+2d/50> Trace: 10bfb6 <IRQ5_interrupt+56/80> Trace: 10cee7 <setup_x86_irq+127/130> Trace: 2090010 Trace: 209e6c4 Trace: 10cf58 <request_irq+68/90> Trace: 20b1000 Trace: 20a86a8 Trace: 20a86a8 Trace: 209471e Trace: 209e6c4 Trace: 20a7cfb Trace: 20b1000 Trace: 209f2f6 Trace: 209e6c4 Trace: 20a7cfb Trace: 209e55a Trace: 209e51e Trace: 20a86a8 Trace: 2094dff Trace: 20a86a8 Trace: 2094e49 Trace: 2094533 Trace: 2094643 Trace: 11f0d3 <kmalloc+143/220> Trace: 2094664 Trace: 114fa4 <sys_init_module+214/440> Trace: 115190 <sys_init_module+400/440> Trace: 11fb0d <vmalloc+4d/80> Trace: 20945c4 Trace: 2094664 Trace: 1118b8 <timer_bh+b8/150> Trace: 1118f0 <timer_bh+f0/150> Trace: 11795b <do_bottom_half+3b/70> Trace: 10aa52 <system_call+52/80>
Code: movl $0x1,0x40(%ebx) Code: testl %ebx,%ebx Code: je 000000f3 <_EIP+f3> Code: cmpl %eax,0x24(%ebx) Code: jne 90909018 <_EIP+90909018>
|  |