Thank you for the trace. Patch attached, please test it out.

Rui Sousa

P.S: in the future always CC emu10k1-devel, or instead of a 7 day delay in
getting something fixed the message might just get lost.

On Thu, 24 May 2001, David Raufeisen wrote:

> May 24 10:58:05 prototype kernel: Unable to handle kernel NULL pointer dereference 
>at virtual address 00000004
> May 24 10:58:05 prototype kernel:  printing eip:
> May 24 10:58:05 prototype kernel: c01bcb40
> May 24 10:58:05 prototype kernel: *pde = 00000000
> May 24 10:58:05 prototype kernel: Oops: 0002
> May 24 10:58:05 prototype kernel: CPU:    0
> May 24 10:58:05 prototype kernel: EIP:    0010:[emu10k1_timer_uninstall+48/240]
> May 24 10:58:05 prototype kernel: EFLAGS: 00210097
> May 24 10:58:05 prototype kernel: eax: 00000000   ebx: ffffffff   ecx: c1c68a78   
>edx: 00000000
> May 24 10:58:05 prototype kernel: esi: c1254070   edi: c1250000   ebp: 00200097   
>esp: c1c4bf34
> May 24 10:58:05 prototype kernel: ds: 0018   es: 0018   ss: 0018
> May 24 10:58:05 prototype kernel: Process cat (pid: 378, stackpage=c1c4b000)
> May 24 10:58:05 prototype kernel: Stack: c1c68a00 c1250000 c1cb1300 c1c4a000 
>c1250000 c01b8b8b c1250000 c1c68a78
> May 24 10:58:05 prototype kernel:        c1cb1300 c1c68a00 c1250000 c01b8b36 
>c1cb1300 00200246 c1c68a00 00001000
> May 24 10:58:05 prototype kernel:        c01b541f c1cb1300 c1ca58c0 ffffffea 
>00000000 00001000 00001000 00000000
> May 24 10:58:05 prototype kernel: Call Trace: [emu10k1_waveout_close+27/64] 
>[emu10k1_waveout_open+102/160] [emu10k1_audio_write+207/464] [sys_write+150/208] 
>[system
> _call+51/56]
>
>
Index: audio.c
===================================================================
RCS file: /usr/local/cvsroot/emu10k1/audio.c,v
retrieving revision 1.166
diff -u -r1.166 audio.c
--- audio.c     2001/04/22 15:44:25     1.166
+++ audio.c     2001/05/31 08:47:25
@@ -1231,6 +1231,7 @@
                woinst->buffer.ossfragshift = 0;
                woinst->buffer.numfrags = 0;
                woinst->device = (card->audio_dev1 == minor);
+               woinst->timer.state = TIMER_STATE_UNINSTALLED;
 
                init_waitqueue_head(&woinst->wait_queue);
 

Reply via email to