Constant stream of errors on msk0

Pyun YongHyeon pyunyh at gmail.com
Mon Oct 29 19:26:32 PDT 2007


On Tue, Feb 20, 2007 at 01:40:37PM -0500, Joe Marcus Clarke wrote:
 > -----BEGIN PGP SIGNED MESSAGE-----
 > Hash: SHA1
 > 
 > Pyun YongHyeon wrote:
 > 
 > > 
 > > Does the other GigE work without issues on Cisco 6500?
 > 
 > I haven't tried this card on another gigE switch.  However, the same
 > switch port on the same switch did not exhibit these problems with the
 > myk driver under 6.X.  At least as far as I know my desk port was not
 > moved in the IDF.
 > 
 > > 
 > > The msk(4) can have a bug with autonegotiation but I've never seen
 > > negotiation mismatches on msk(4). Whilst writing the driver I've
 > > checked speed/link negotiation against gigabit switch and directly
 > > connected GigE and I found nothing unusual. Of course, that does
 > > not necessarily mean msk(4) is perfect for link negotiation.
 > > 
 > > Because you've said myk(4) works well on Cisco 6500 I have to
 > > diagnose the issue. When setting the link manually on gigabit
 > > environments, nomally one side should be master and the other the
 > > slave so how about forcing master bit on msk(4) side?
 > > 
 > > #ifconfig msk0 media 1000baseTX mediaopt full-duplex link0
 > >                                                      ^^^^^
 > 
 > This does not help.  I tried 1000BaseTX/full, 100BaseTX/full, and
 > 100BaseTX/half.  All three exhibited the same problem with constantly
 > incrementing input errors.
 > 
Hi,

Are you still interesting in fixing autonegotiation issue on msk(4)
at 1000bps?
If so please try attached patch and let me know result.

-- 
Regards,
Pyun YongHyeon
-------------- next part --------------
Index: e1000phy.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/mii/e1000phy.c,v
retrieving revision 1.19
diff -u -r1.19 e1000phy.c
--- e1000phy.c	29 Oct 2007 05:50:22 -0000	1.19
+++ e1000phy.c	30 Oct 2007 01:56:55 -0000
@@ -397,8 +397,10 @@
 		/*
 		 * Only used for autonegotiation.
 		 */
-		if (IFM_SUBTYPE(ife->ifm_media) != IFM_AUTO)
+		if (IFM_SUBTYPE(ife->ifm_media) != IFM_AUTO) {
+			sc->mii_ticks = 0;
 			break;
+		}
 
 		/*
 		 * check for link.
@@ -411,6 +413,8 @@
 		}
 
 		/* Announce link loss right after it happens. */
+		if (sc->mii_ticks++ == 0)
+			break;
 		if (sc->mii_ticks <= sc->mii_anegticks)
 			return (0);
 


More information about the freebsd-current mailing list