From owner-freebsd-multimedia@FreeBSD.ORG Thu Mar 22 17:07:57 2012 Return-Path: Delivered-To: multimedia@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E5B72106564A for ; Thu, 22 Mar 2012 17:07:56 +0000 (UTC) (envelope-from joel@freebsd.org) Received: from mail.vnode.se (mail.vnode.se [62.119.52.80]) by mx1.freebsd.org (Postfix) with ESMTP id 65DDB8FC08 for ; Thu, 22 Mar 2012 17:07:56 +0000 (UTC) Received: from mail.vnode.se (localhost [127.0.0.1]) by mail.vnode.se (Postfix) with ESMTP id 76BF2E3F07A; Thu, 22 Mar 2012 18:07:55 +0100 (CET) X-Virus-Scanned: amavisd-new at vnode.se Received: from mail.vnode.se ([127.0.0.1]) by mail.vnode.se (mail.vnode.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id klMv2oJuO3K5; Thu, 22 Mar 2012 18:07:53 +0100 (CET) Received: from goofy01.vnodelab.local (jd.benders.se [212.247.52.12]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.vnode.se (Postfix) with ESMTPSA id 354F8E3F079; Thu, 22 Mar 2012 18:07:52 +0100 (CET) Date: Thu, 22 Mar 2012 18:07:50 +0100 From: Joel Dahl To: Taku YAMAMOTO Message-ID: <20120322170750.GN7018@goofy01.vnodelab.local> References: <20120120170956.GV11137@goofy01.vnodelab.local> <20120321185657.2a986429.taku@tackymt.homeip.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20120321185657.2a986429.taku@tackymt.homeip.net> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: multimedia@freebsd.org Subject: Re: Removing broken drivers in sys/dev/sound/pci X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Mar 2012 17:07:57 -0000 On 21-03-2012 18:56, Taku YAMAMOTO wrote: > On Fri, 20 Jan 2012 18:09:57 +0100 > Joel Dahl wrote: > > > Hi all, > > > > I've been playing with a bunch of old sound cards I had lying around and I've > > come to the conlusion that maybe it's time to remove a few old drivers we > > currently have in the tree. > > [snip] > > > - snd_maestro > > > > This driver seems to have been broken since 5.2.1 and there are currently > > 3 open PR's: kern/63204, kern/119973 and kern/122086. I decided to give it > > a try with an old ESS Maestro-2 that I have here and I got a bunch of errors > > when trying to kldload it on FreeBSD-CURRENT: > > > > pcm1: port 0x1100-0x11ff irq 22 at device 11.0 on > > pci16 lock order reversal: (sleepable after non-sleepable) > > 1st 0xfffffe0008118050 ESS Technology Maestro-2 (snd_maestro softc) @ > > /usr/src/sys/modules/sound/driver/maestro/../../../../dev/sound/pci/maestro.c:1886 > > 2nd 0xffffffff8111b900 ACPI PCI power methods (ACPI PCI power methods) @ > > /usr/src/sys/dev/acpica/acpi_pci.c:180 > > KDB: stack backtrace: > > db_trace_self_wrapper() at db_trace_self_wrapper+0x2a > > kdb_backtrace() at kdb_backtrace+0x37 > > _witness_debugger() at _witness_debugger+0x2c > > witness_checkorder() at witness_checkorder+0x854 > > _sx_xlock() at _sx_xlock+0x5d > > acpi_pci_set_powerstate_method() at acpi_pci_set_powerstate_method+0x6a > > agg_power() at agg_power+0xd0 > > agg_attach() at agg_attach+0x608 > > device_attach() at device_attach+0x69 > > pci_driver_added() at pci_driver_added+0xda > > devclass_driver_added() at devclass_driver_added+0x75 > > devclass_add_driver() at devclass_add_driver+0x10b > > module_register_init() at module_register_init+0x7d > > linker_load_module() at linker_load_module+0x9c3 > > kern_kldload() at kern_kldload+0xac > > sys_kldload() at sys_kldload+0x84 > > amd64_syscall() at amd64_syscall+0x39e > > Xfast_syscall() at Xfast_syscall+0xf7 > > --- syscall (304, FreeBSD ELF64, sys_kldload), rip = 0x8008adc0c, > > rsp = 0x7fffffffd5c8, rbp = 0x7fffffffdb48 --- > > pcm1: agg_rdcodec() RW_DONE timed out. > > pcm1: agg_rdcodec() PROGLESS timed out. > > pcm1: agg_wrcodec() PROGLESS timed out. > > pcm1: > > pcm1: agg_rdcodec() PROGLESS timed out. > > pcm1: agg_wrcodec() PROGLESS timed out. > > pci16: failed to set ACPI power state D2 on \\_SB_.PCI0.HUB_.SLT3: AE_BAD_PARAMETER > > > > Playback does not work, which isn't all that surprising. > > I, as the author of this driver, am interested in that you still have > actual hardware and trying to make it work. > > To consider fixing this driver, your help would be very appriciated > because I no longer have this type of device handy. > > First of all, the attached patch works for you? Hi, I'v applied the patch and I've done some testing now. The lock order reversal is gone. The pci16 ACPI error message is also gone. All those agg_rdcodec()/agg_wrcodec messages are still there. Playback does not seem to work. -- Joel