From owner-freebsd-stable@FreeBSD.ORG Fri May 31 05:25:00 2013 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id F2E66C6E; Fri, 31 May 2013 05:24:59 +0000 (UTC) (envelope-from danny@cs.huji.ac.il) Received: from kabab.cs.huji.ac.il (kabab.cs.huji.ac.il [132.65.16.84]) by mx1.freebsd.org (Postfix) with ESMTP id A9862151; Fri, 31 May 2013 05:24:59 +0000 (UTC) Received: from pampa.cs.huji.ac.il ([132.65.80.32]) by kabab.cs.huji.ac.il with esmtp id 1UiHpX-000AaB-38; Fri, 31 May 2013 08:24:47 +0300 X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.3 To: John Baldwin Subject: Re: SunFire X2200 ilo's bge1 DOWN/UP In-reply-to: <201305300859.20928.jhb@freebsd.org> References: <20130529085544.GC3042@michelle.cdnetworks.com> <201305300859.20928.jhb@freebsd.org> Comments: In-reply-to John Baldwin message dated "Thu, 30 May 2013 08:59:20 -0400." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 31 May 2013 08:24:47 +0300 From: Daniel Braniss Message-ID: Cc: pyunyh@gmail.com, freebsd-stable@freebsd.org X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 May 2013 05:25:00 -0000 > On Thursday, May 30, 2013 2:44:35 am Daniel Braniss wrote: > > > --/04w6evG8XlLl3ft > > > Content-Type: text/x-diff; charset=us-ascii > > > Content-Disposition: attachment; filename="bge.media_sts.diff" > > > > > > Index: sys/dev/bge/if_bge.c > > > =================================================================== > > > --- sys/dev/bge/if_bge.c (revision 251021) > > > +++ sys/dev/bge/if_bge.c (working copy) > > > @@ -5583,6 +5583,10 @@ bge_ifmedia_sts(struct ifnet *ifp, struct ifmediar > > > > > > BGE_LOCK(sc); > > > > > > + if ((ifp->if_flags & IFF_UP) == 0) { > > > + BGE_UNLOCK(sc); > > > + return; > > > + } > > > if (sc->bge_flags & BGE_FLAG_TBI) { > > > ifmr->ifm_status = IFM_AVALID; > > > ifmr->ifm_active = IFM_ETHER; > > > > > > --/04w6evG8XlLl3ft-- > > after 18hs, the logs are empty! > > it seems the patch fixes the problem. > > > > now maybe it's time to hunt for who is randomly calling for bge_ifmedia_sts > > ... > > It could be any number of daemons that query interface state such as an > SNMP server, ladvd, etc. > > If you wanted help you could modify the patch so that it does something like > this: > #include > if (/* test for IFF_UP */) { > BGE_UNLOCK(sc); > if_printf(ifp, "state queried on down interface by pid %d (%s)", ------------------------------------------------------------------------------| add a \n > curthread->td_proc->p_pid, curthread->td_proc->p_comm); > return; > } > > -- > John Baldwin snmpd call this several times a second, (difficult to measeure since sysolog just says last message repeated 22 times in any case, the DOWN/UP appears once every few hours, oh well. I have now stopped the snmpd daemon, maybe there is someone else ... thanks, danny