Date: Tue, 26 Jan 2010 18:53:00 +0300 From: Dmitry Sivachenko <demon@freebsd.org> To: John Baldwin <jhb@freebsd.org> Cc: freebsd-stable@freebsd.org, yongari@freebsd.org Subject: Re: RELENG_7 if_nve panic Message-ID: <20100126155300.GA87838@m4-new.master-telecom.ru> In-Reply-To: <201001260949.46082.jhb@freebsd.org> References: <20100126092905.GA47528@m4-new.master-telecom.ru> <201001260949.46082.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jan 26, 2010 at 09:49:45AM -0500, John Baldwin wrote: > On Tuesday 26 January 2010 4:29:05 am Dmitry Sivachenko wrote: > > Hello! > > > > I recompiled recent RELENG_7 and I get the following panic after > > trying to kldload if_nve (interesting stack frames are 12, 13, 14 I guess). > > Previous version of RELENG_7 (compiled in the middle of December) > > worked fine. Last few days I was trying to re-cvsup and always get the > > same panic. I get FreeBSD sources via cvsup (cvsup5.freebsd.org). > > > > Any suggestions? > > > > Thanks in advance! > > The bug is perhaps in e1000phy in that it expects all callers to have called > if_initname() before the miibus is probed. Try this patch: That patch solves the problem, thanks! > > Index: if_nve.c > =================================================================== > --- if_nve.c (revision 202705) > +++ if_nve.c (working copy) > @@ -526,14 +526,6 @@ > goto fail; > } > > - /* Probe device for MII interface to PHY */ > - DEBUGOUT(NVE_DEBUG_INIT, "nve: do mii_phy_probe\n"); > - if (mii_phy_probe(dev, &sc->miibus, nve_ifmedia_upd, nve_ifmedia_sts)) { > - device_printf(dev, "MII without any phy!\n"); > - error = ENXIO; > - goto fail; > - } > - > /* Setup interface parameters */ > ifp->if_softc = sc; > if_initname(ifp, device_get_name(dev), device_get_unit(dev)); > @@ -549,6 +541,14 @@ > ifp->if_capabilities |= IFCAP_VLAN_MTU; > ifp->if_capenable |= IFCAP_VLAN_MTU; > > + /* Probe device for MII interface to PHY */ > + DEBUGOUT(NVE_DEBUG_INIT, "nve: do mii_phy_probe\n"); > + if (mii_phy_probe(dev, &sc->miibus, nve_ifmedia_upd, nve_ifmedia_sts)) { > + device_printf(dev, "MII without any phy!\n"); > + error = ENXIO; > + goto fail; > + } > + > /* Attach to OS's managers. */ > ether_ifattach(ifp, eaddr); > > > -- > John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100126155300.GA87838>