Date: Mon, 14 Jul 1997 15:02:37 -0700 From: Amancio Hasty <hasty@rah.star-gate.com> To: Randall Hopper <rhh@ct.picker.com> Cc: Oliver Fromme <oliver.fromme@heim3.tu-clausthal.de>, multimedia@FreeBSD.ORG Subject: Re: guspnp9: /dev/dsp close() hangs Message-ID: <199707142202.PAA06284@rah.star-gate.com> In-Reply-To: Your message of "Mon, 14 Jul 1997 17:33:35 EDT." <19970714173335.27084@ct.picker.com>
next in thread | previous in thread | raw e-mail | index | archive | help
If you are interested in hacking: audio_release calls : dma_sync module specific close routine (sb_close..) According to the output which Randall sent me it appears that dma_sync is waiting on the last buffer to be processed by the soundcard. I think that dma_sync can return without processing all the buffers if thats the case, then sb_close will turn off processing interrupts from the sb card and the buffer will not be processed. Amancio >From The Desk Of Randall Hopper : > Amancio Hasty: > |In sb_dsp_close: > |Move down sb_free_irq to after dsp_cleanup. > | > | /* DMAbuf_close_dma (dev); */ > | /* sb_dsp_command (0xd4); */ > | dsp_cleanup(); > | sb_free_irq(); > | > |sb16dsp.c:sb16_dsp_close has the same problem. > | > |See if that fixes the sb cards hanging during a close. > > No change. When I got to looking closer at sb_free_irq, I saw why :-) > > void > sb_free_irq(void) > { > } > > Randall
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707142202.PAA06284>