From owner-freebsd-bugs Wed Oct 4 19: 0:54 2000 Delivered-To: freebsd-bugs@freebsd.org Received: from gssm.otsuka.tsukuba.ac.jp (utogwgw.gssm.otsuka.tsukuba.ac.jp [130.158.176.189]) by hub.freebsd.org (Postfix) with SMTP id 65E9037B503 for ; Wed, 4 Oct 2000 19:00:48 -0700 (PDT) Received: (qmail 51729 invoked from network); 5 Oct 2000 02:00:46 -0000 Received: from OneOfLocalMachines (HELO smr00.gssm.otsuka.tsukuba.ac.jp) (10.2.1.1) by utogw.gssm.otsuka.tsukuba.ac.jp with SMTP; 5 Oct 2000 02:00:46 -0000 Received: from localhost (localhost [127.0.0.1]) by smr00.gssm.otsuka.tsukuba.ac.jp (8.9.3/8.9.3) with ESMTP id LAA02927; Thu, 5 Oct 2000 11:00:46 +0900 (JST) (envelope-from ohki@gssm.otsuka.tsukuba.ac.jp) Message-Id: <200010050200.LAA02927@smr00.gssm.otsuka.tsukuba.ac.jp> From: Atsuo Ohki To: freebsd-bugs@freebsd.org Cc: ohki@gssm.otsuka.tsukuba.ac.jp Subject: if_wi.c of FreeBSD Mime-Version: 1.0 Content-Type: text/plain;charset="us-ascii" Date: Thu, 05 Oct 2000 11:00:46 +0900 Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hi, I found a small problem with if_wi.c in FreeBSD(3.3-RELEASE and later, probably 4.1.1 too) After using WaveLan PCMCIA card, other PCMCIA cards do not work properly. (they work for a while but become inoperable sometime.) This problem is due to the timeout route in if_wi.c, wi_inquire(). I'm afraid that untimeout() should be call for it when a WaveLan PCMCIA card is just unloaded, like following context diff (based on FreeBSD 3.3-RELEASE). --- if_wi.c-ORIG Mon Aug 30 01:07:24 1999 +++ if_wi.c Wed Oct 4 17:08:06 2000 @@ -246,6 +246,8 @@ sc->wi_gone = 1; printf("wi%d: unloaded\n", sc_p->isahd.id_unit); + untimeout(wi_inquire, sc, sc->wi_stat_ch); /* XXX */ + return; } @@ -509,6 +511,8 @@ struct ifnet *ifp; sc = xsc; + if (sc->wi_gone) return; /* XXX paranoia ? */ + ifp = &sc->arpcom.ac_if; sc->wi_stat_ch = timeout(wi_inquire, sc, hz * 60); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message