From owner-freebsd-multimedia Sun Jul 13 14:15:08 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id OAA07698 for multimedia-outgoing; Sun, 13 Jul 1997 14:15:08 -0700 (PDT) Received: from whqvax.picker.com (whqvax.picker.com [144.54.1.1]) by hub.freebsd.org (8.8.5/8.8.5) with SMTP id OAA07690 for ; Sun, 13 Jul 1997 14:15:05 -0700 (PDT) Received: from ct.picker.com by whqvax.picker.com with SMTP; Sun, 13 Jul 1997 17:13:49 -0400 (EDT) Received: from elmer.ct.picker.com ([144.54.57.34]) by ct.picker.com (4.1/SMI-4.1) id AA26649; Sun, 13 Jul 97 17:13:48 EDT Received: by elmer.ct.picker.com (SMI-8.6/SMI-SVR4) id RAA05410; Sun, 13 Jul 1997 17:11:49 -0400 Message-Id: <19970713171149.34096@ct.picker.com> Date: Sun, 13 Jul 1997 17:11:49 -0400 From: Randall Hopper To: Amancio Hasty Cc: multimedia@freebsd.org Subject: guspnp9: /dev/dsp close() hangs Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.76 Sender: owner-multimedia@freebsd.org X-Loop: FreeBSD.org Precedence: bulk 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 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