Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 Jul 1997 15:25:39 -0700
From:      Amancio Hasty <hasty@rah.star-gate.com>
To:        Randall Hopper <rhh@ct.picker.com>
Cc:        multimedia@FreeBSD.ORG
Subject:   Re: guspnp9: /dev/dsp close() hangs 
Message-ID:  <199707132225.PAA00590@rah.star-gate.com>
In-Reply-To: Your message of "Sun, 13 Jul 1997 17:11:49 EDT." <19970713171149.34096@ct.picker.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

I need a little more info.

in dmabuf.c:dma_sync
	while (!(out_sleep_flag[dev].aborting)
	       && audio_devs[dev]->dmap_out->qlen) {

	    int             flag, chn;
            printf("dmabuf %d \n", audio_devs[dev]->dmap_out->qlen);

Add the above printf and please send me the output of the last few
lines .

	Tnks,
	Amanco

	    
>From The Desk Of Randall Hopper :
> Well, first thanks for your previous work on the lock-ups!  I haven't
> crashed my machine Ctrl-Cing audio apps yet and I've sure been trying. :-)
> 
> A related problem I am seeing though is that about 20% of the time,
> Ctrl-Cing a /dev/dsp play app causes the sound driver to block inside of
> close().  It doesn't hang the machine (thank goodness), just the app.
> E.g. with mpg123:
> 
>    ----> THESE LINES REPEAT (WRITE AUDIO DATA UNTIL DONE...):
>    566 mpg123   RET   read 8192/0x2000
>    566 mpg123   CALL  write(0x4,0x34000,0x8000)
>    566 mpg123   GIO   fd 4 wrote 32768 bytes
> 
>    ----> CTRL-C HIT HERE...TRY TO CLOSE-UP SHOP: 
>    566 mpg123   RET   write 32768/0x8000
>    566 mpg123   CALL  write(0x4,0x34000,0x8000)
>    566 mpg123   PSIG  SIGINT caught handler=0x2a10 mask=0x0 code=0x0
>    566 mpg123   RET   write -1 errno 4 Interrupted system call
>    566 mpg123   CALL  sigreturn(0xefbfcae8)
>    566 mpg123   RET   sigreturn JUSTRETURN
>    566 mpg123   CALL  close(0x3)
>    566 mpg123   RET   close 0
>    566 mpg123   CALL  write(0x2,0xefbfcc64,0x28)
>    566 mpg123   GIO   fd 2 wrote 40 bytes
>        "[0:01] Decoding of things.mp2 finished.
>        "
>    566 mpg123   RET   write 40/0x28
>    566 mpg123   CALL  gettimeofday(0xefbfd3a4,0)
>    566 mpg123   RET   gettimeofday 0
>    566 mpg123   CALL  write(0x4,0x34000,0xa00)
>    566 mpg123   GIO   fd 4 wrote 2560 bytes
>                 <much raw data omitted here>
>    566 mpg123   RET   write 2560/0xa00
>    566 mpg123   CALL  close(0x4)
> 
>    ----> WE'RE NOW BLOCKED WAITING ON /DEV/DSP CLOSE...IT DOESN'T COME BACK
> 
>    ----> CTRL-C HIT AGAIN
>    566 mpg123   PSIG  SIGINT caught handler=0x2a10 mask=0x0 code=0x0
>    566 mpg123   RET   close 0
>    566 mpg123   CALL  sigreturn(0xefbfd334)
>    566 mpg123   RET   sigreturn JUSTRETURN
>    566 mpg123   CALL  exit(0)
> 
> Hope this helps.  If you need more info, let me know.
> 
> Thanks,
> 
> Randall





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707132225.PAA00590>