From owner-freebsd-current@FreeBSD.ORG Tue Dec 9 21:18:43 2008 Return-Path: Delivered-To: current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AC84F1065672 for ; Tue, 9 Dec 2008 21:18:43 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 42E2E8FC20 for ; Tue, 9 Dec 2008 21:18:43 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.2/8.14.1) with ESMTP id mB9LG7Kv099036; Tue, 9 Dec 2008 14:16:07 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Tue, 09 Dec 2008 14:16:16 -0700 (MST) Message-Id: <20081209.141616.2139790010.imp@bsdimp.com> To: elias@artx.ru From: "M. Warner Losh" In-Reply-To: <20081209204404.GA17018@artx.ru> References: <20081209192439.GA16703@artx.ru> <20081209.124743.-201314317.imp@bsdimp.com> <20081209204404.GA17018@artx.ru> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: current@FreeBSD.org Subject: Re: "interrupt storm..."; seems associated with an0 NIC X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Dec 2008 21:18:43 -0000 Thanks! This helps a lot. The fact that xl works also is an important hint for me for another problem I'm chasing... does this patch cause the printfs we've added to not be hit? Warner Index: pccbb.c =================================================================== --- pccbb.c (revision 185750) +++ pccbb.c (working copy) @@ -514,7 +514,7 @@ * a chance to run. */ mtx_lock(&sc->mtx); - cbb_setb(sc, CBB_SOCKET_MASK, CBB_SOCKET_MASK_CD | CBB_SOCKET_MASK_CSTS); + cbb_setb(sc, CBB_SOCKET_MASK, CBB_SOCKET_MASK_CD); msleep(&sc->intrhand, &sc->mtx, 0, "-", 0); err = 0; while (err != EWOULDBLOCK && In message: <20081209204404.GA17018@artx.ru> Ilya Orehov writes: : +------- M. Warner Losh, 2008-12-09 ------- : | In message: <20081209192439.GA16703@artx.ru> : | Ilya Orehov writes: : | : Need to ack 0x1 : | : | What happens if you also print the current mask register? CBB_SOCKET_MASK? : : Rebooted with xl0 card inserted, : first time (after initialization) mask=7, : after eject/insert xl0 mask=1. : : ... : xl0: Ethernet address: 00:60:08:d2:38:56 : xl0: [ITHREAD] : Need to ack 0x1, mask=00000007 : acd0: CDROM at ata1-master PIO4 : Trying to mount root from ufs:/dev/ad0s2a : WARNING: attempt to net_add_domain(bluetooth) after domainfinalize() : xl0: reset didn't complete : xl0: command never completed! : xl0: command never completed! : xl0: command never completed! : tdkphy0: detached : miibus0: detached : xl0: detached : Need to ack 0x1, mask=00000001 : xl0: <3Com 3c575TX Fast Etherlink XL> port 0x1000-0x103f irq 11 at device 0.0 on cardbus1 : miibus0: on xl0 : ... : : Rebooted once more, without card. : After card (xl0) inserted, mask=1. : : Rebooted with same card inserted in second slot. : First time (after initialization) mask=7, : after eject/insert into same slot xl0 mask=1, : after eject card was inserted into first slot, mask=1, : : code was: : if (!ack) { : mask = cbb_get(sc, CBB_SOCKET_MASK); : printf("Need to ack %#x, mask=%08x\n", sockevent, mask); : cbb_set(sc, CBB_SOCKET_EVENT, sockevent); : } : : regards, : Ilya. : : : | : | Warner : | : +----------------------------- : :