From owner-freebsd-scsi@FreeBSD.ORG Sat May 12 16:19:11 2007 Return-Path: X-Original-To: freebsd-scsi@freebsd.org Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 073A516A405; Sat, 12 May 2007 16:19:11 +0000 (UTC) (envelope-from scottl@samsco.org) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.freebsd.org (Postfix) with ESMTP id A8DFE13C522; Sat, 12 May 2007 16:19:10 +0000 (UTC) (envelope-from scottl@samsco.org) Received: from phobos.samsco.home (phobos.samsco.home [192.168.254.11]) (authenticated bits=0) by pooker.samsco.org (8.13.8/8.13.8) with ESMTP id l4CG0G1B030535; Sat, 12 May 2007 10:00:17 -0600 (MDT) (envelope-from scottl@samsco.org) Message-ID: <4645E489.80705@samsco.org> Date: Sat, 12 May 2007 10:00:09 -0600 From: Scott Long User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.2pre) Gecko/20070111 SeaMonkey/1.1 MIME-Version: 1.0 To: mjacob@freebsd.org References: <20070512110338.GA88520@garage.freebsd.pl> <20070512084036.U37624@ns1.feral.com> In-Reply-To: <20070512084036.U37624@ns1.feral.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (pooker.samsco.org [168.103.85.57]); Sat, 12 May 2007 10:00:17 -0600 (MDT) X-Spam-Status: No, score=-1.4 required=5.5 tests=ALL_TRUSTED autolearn=failed version=3.1.8 X-Spam-Checker-Version: SpamAssassin 3.1.8 (2007-02-13) on pooker.samsco.org Cc: freebsd-scsi@freebsd.org, Pawel Jakub Dawidek Subject: Re: isp(4) mutex recursion. X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 12 May 2007 16:19:11 -0000 As you probably noticed, config_intrhooks get run synchronously if "cold" is not set, i.e. after boot. This really needs to be fixed so that they always run asynchronously. Scott mjacob@freebsd.org wrote: > Interesting and noted. Try doing it not as a module. > > > On Sat, 12 May 2007, Pawel Jakub Dawidek wrote: > >> I've this panic on isp.ko load with recent current: >> >> isp0: port 0x3000-0x30ff mem >> 0xfc400000-0xfc400fff irq 27 at device 4.0 on pci2 >> registered firmware set >> isp0: [ITHREAD] >> isp0: Board Type 2300, Chip Revision 0x1, loaded F/W Revision 3.3.19 >> panic: _mtx_lock_sleep: recursed on non-recursive mutex isp @ >> /usr/home/src/HEAD/src/sys/modules/isp/../../dev/isp/isp_freebsd.c:688 >> >> cpuid = 1 >> KDB: enter: panic >> [thread pid 560 tid 100030 ] >> Stopped at kdb_enter+0x2b: nop >> db> tr >> Tracing pid 560 tid 100030 td 0xc36ee870 >> kdb_enter(c06022ed) at kdb_enter+0x2b >> panic(c06014aa,c3c40298,c3c3fb2b,2b0,c04c636f,...) at panic+0x11c >> _mtx_lock_sleep(c3778690,c36ee870,0,c3c3fb2b,2b0) at _mtx_lock_sleep+0x3a >> _mtx_lock_flags(c3778690,0,c3c3fb2b,2b0,0,...) at _mtx_lock_flags+0x94 >> isp_intr_enable(c3778600,c0671a60,0,c0604304,47,...) at >> isp_intr_enable+0x20 >> run_interrupt_driven_config_hooks(0) at >> run_interrupt_driven_config_hooks+0x43 >> config_intrhook_establish(c3778638,c3778638,c3778690,3e5b3000,0,...) >> at config_intrhook_establish+0xb9 >> isp_attach(c3778600,c05f7a2a,1,c3c41560,30,...) at isp_attach+0x81 >> isp_pci_attach(c3789680) at isp_pci_attach+0x127d >> device_attach(c3789680,c3789680,c3789680,0,c37e4600,...) at >> device_attach+0x58 >> device_probe_and_attach(c3789680,c3789680,c37e4600) at >> device_probe_and_attach+0xe0 >> pci_driver_added(c3789700,c3c414b0) at pci_driver_added+0xd1 >> devclass_add_driver(c36dac00,c3c414b0) at devclass_add_driver+0xd5 >> driver_module_handler(c3b152c0,0,c3c4149c,c066ca10,c0601132,7b) at >> driver_module_handler+0x59 >> module_register_init(c3c41490) at module_register_init+0x66 >> linker_file_sysinit(c3bdd100,c3bdd100,c066c564,c05ffa8f,196,...) at >> linker_file_sysinit+0x9d >> linker_load_file(c383a520,e2296c20) at linker_load_file+0x102 >> linker_load_module(0,c37e6000,0,0,e2296c58,c066c564,c05ffa8f,364) at >> linker_load_module+0xdb >> kern_kldload(c36ee870,c37e6000,e2296c7c) at kern_kldload+0x92 >> kldload(c36ee870,e2296d00) at kldload+0x4f >> syscall(e2296d38) at syscall+0x242 >> Xint0x80_syscall() at Xint0x80_syscall+0x20 >> --- syscall (304, FreeBSD ELF32, kldload), eip = 0x280c17ab, esp = >> 0xbfbfec1c, ebp = 0xbfbfec58 --- >> >> -- >> Pawel Jakub Dawidek http://www.wheel.pl >> pjd@FreeBSD.org http://www.FreeBSD.org >> FreeBSD committer Am I Evil? Yes, I Am! >> > _______________________________________________ > freebsd-scsi@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-scsi > To unsubscribe, send any mail to "freebsd-scsi-unsubscribe@freebsd.org"