From owner-freebsd-ports-bugs@FreeBSD.ORG Thu Jun 22 21:10:18 2006 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 22E1A16A49E for ; Thu, 22 Jun 2006 21:10:18 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6623C43D6D for ; Thu, 22 Jun 2006 21:10:17 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k5MLAHsZ095422 for ; Thu, 22 Jun 2006 21:10:17 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k5MLAH1U095421; Thu, 22 Jun 2006 21:10:17 GMT (envelope-from gnats) Resent-Date: Thu, 22 Jun 2006 21:10:17 GMT Resent-Message-Id: <200606222110.k5MLAH1U095421@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, mark@darklogik.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3892F16A4C9 for ; Thu, 22 Jun 2006 21:07:58 +0000 (UTC) (envelope-from markzero@corolla.ath.cx) Received: from addr9.addr.com (addr9.addr.com [38.113.244.40]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6AAF243D60 for ; Thu, 22 Jun 2006 21:07:57 +0000 (GMT) (envelope-from markzero@corolla.ath.cx) Received: from logik.internal.network (localhost [127.0.0.1]) by addr9.addr.com (8.12.11/8.12.8/Submit) with ESMTP id k5ML7rwE013009 for ; Thu, 22 Jun 2006 14:07:54 -0700 (PDT) Received: by logik.internal.network (Postfix, from userid 1001) id 4B8CB6242; Thu, 22 Jun 2006 22:07:52 +0100 (BST) Message-Id: <20060622210752.4B8CB6242@logik.internal.network> Date: Thu, 22 Jun 2006 22:07:52 +0100 (BST) From: markzero To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/99323: jackd audio server broken? X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: mark@darklogik.org List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jun 2006 21:10:18 -0000 >Number: 99323 >Category: ports >Synopsis: jackd audio server broken? >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Jun 22 21:10:16 GMT 2006 >Closed-Date: >Last-Modified: >Originator: mark@darklogik.org >Release: FreeBSD 6.0-RELEASE-p7 i386 >Organization: n/a >Environment: System: FreeBSD logik.internal.network 6.0-RELEASE-p7 FreeBSD 6.0-RELEASE-p7 #0: Mon May 8 14:57:01 BST 2006 root@logik.internal.network:/usr/src/sys/i386/compile/LOGIK150406 i386 jackit-0.101.1_1 Soundblaster LIVE (snd_emu10k1.ko) >Description: I've sent an email to the jackit-devel mailing list as I'm not sure if this problem is to do with jack or to do with FreeBSD. I haven't had a reply from the mailing list yet, so I'm assuming that it's something FreeBSD-specific. jackd seems to go berserk whenever a client quits. It happens using any driver, even 'dummy'. $ jackd -v -d dummy getting driver descriptor from /usr/local/lib/jack/jack_dummy.so getting driver descriptor from /usr/local/lib/jack/jack_oss.so getting driver descriptor from /usr/local/lib/jack/jack_portaudio.so jackd 0.101.1 Copyright 2001-2005 Paul Davis and others. jackd comes with ABSOLUTELY NO WARRANTY This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details JACK compiled with System V SHM support. server `default' registered registered builtin port type 32 bit float mono audio loading driver .. creating dummy driver ... dummy_pcm|48000|1024|21333|2|2 new client: dummy_pcm, id = 1 type 1 0x805a200 fd = -1 new buffer size 1024 registered port dummy_pcm:capture_1, offset = 4096 registered port dummy_pcm:capture_2, offset = 8192 registered port dummy_pcm:playback_1, offset = 0 registered port dummy_pcm:playback_2, offset = 0 13069 waiting for signals ++ jack_rechain_graph(): client dummy_pcm: internal client, execution_order=0. -- jack_rechain_graph() load = 0.0328 max usecs: 14.000, spare = 21319.000 ... Then running jack_simple_client in another terminal: $ jack_simple_client engine sample rate: 48000 The server sees this connection: new client: jack_simple_client, id = 2 type 2 0x28246000 fd = 7 registered port jack_simple_client:input, offset = 0 registered port jack_simple_client:output, offset = 12288 ++ jack_rechain_graph(): client dummy_pcm: internal client, execution_order=0. client jack_simple_client: start_fd=5, execution_order=0. client jack_simple_client: wait_fd=6, execution_order=1 (last client). -- jack_rechain_graph() connect dummy_pcm:capture_1 and jack_simple_client:input (forward) ++ jack_rechain_graph(): client dummy_pcm: internal client, execution_order=0. client jack_simple_client: start_fd=5, execution_order=0. client jack_simple_client: wait_fd=6, execution_order=1 (last client). -- jack_rechain_graph() connect jack_simple_client:output and dummy_pcm:playback_1 (output) ++ jack_rechain_graph(): client dummy_pcm: internal client, execution_order=0. client jack_simple_client: start_fd=5, execution_order=0. client jack_simple_client: wait_fd=6, execution_order=1 (last client). -- jack_rechain_graph() load = 42.3475 max usecs: 18047.000, spare = 3286.000 Now, send a ^C to the client to kill it off and the server goes into a panic: cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request cannot read request from client (0/2100/Resource temporarily unavailable) could not handle external client request It doesn't crash, it just does that seemingly forever. It does this whenever any client exits, which makes it next to useless currently. It randomly crashes with a floating point error too: $ jackd -v -d dummy getting driver descriptor from /usr/local/lib/jack/jack_dummy.so getting driver descriptor from /usr/local/lib/jack/jack_oss.so getting driver descriptor from /usr/local/lib/jack/jack_portaudio.so jackd 0.101.1 Copyright 2001-2005 Paul Davis and others. jackd comes with ABSOLUTELY NO WARRANTY This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details JACK compiled with System V SHM support. server `default' registered registered builtin port type 32 bit float mono audio loading driver .. creating dummy driver ... dummy_pcm|48000|1024|21333|2|2 new client: dummy_pcm, id = 1 type 1 0x805a200 fd = -1 new buffer size 1024 registered port dummy_pcm:capture_1, offset = 4096 registered port dummy_pcm:capture_2, offset = 8192 registered port dummy_pcm:playback_1, offset = 0 registered port dummy_pcm:playback_2, offset = 0 66253 waiting for signals ++ jack_rechain_graph(): client dummy_pcm: internal client, execution_order=0. -- jack_rechain_graph() Floating point exception (core dumped) #0 0x2808fcad in __udivdi3 () from /usr/local/lib/libjack.so.0 #1 0x281baaea in dummy_driver_wait (driver=0x805a300, extra_fd=-1, status=0x1, delayed_usecs=0x1) at cycles.h:34 #2 0x281bb1fb in dummy_driver_run_cycle (driver=0x1) at dummy_driver.c:72 #3 0x2808b7de in jack_driver_nt_thread (arg=0x805a300) at driver.c:122 #4 0x280b8ab1 in pthread_create () from /usr/lib/libpthread.so.2 #5 0x2817245f in _ctx_start () from /lib/libc.so.6 The crash occurs with any driver (oss, portaudio, dummy). I tried to compile a debugging version from SVN, but could not even get a configure script generated under autoconf-2.59. >How-To-Repeat: See above. >Fix: Source of problem not determined yet. >Release-Note: >Audit-Trail: >Unformatted: