Subject: port-mac68k/8605: MACE (mc) driver too noisy about collision errors
To: None <>
From: Dave Huang <>
List: netbsd-bugs
Date: 10/10/1999 18:43:45
>Number:         8605
>Category:       port-mac68k
>Synopsis:       MACE (mc) driver too noisy about collision errors
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    port-mac68k-maintainer (NetBSD/mac68k Portmaster)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Oct 10 18:39:00 1999
>Originator:     Dave Huang
Name: Dave Huang     |   Mammal, mammal / their names are called /
INet:   |   they raise a paw / the bat, the cat /
FurryMUCK: Dahan     |   dolphin and dog / koala bear and hog -- TMBG
Dahan: Hani G Y+C 23 Y++ L+++ W- C++ T++ A+ E+ S++ V++ F- Q+++ P+ B+ PA+ PL++
>Release:        NetBSD-current as of October 10, 1999
System: NetBSD 1.4K NetBSD 1.4K (GEDD) #588: Wed Oct  6 03:43:36 CDT 1999 mac68k

After a tiny bit of discussion on tech-kern or tech-net back in '97,
I've changed the mc driver to not complain about collision errors unless
MCDEBUG is defined, and to always complain if there were more than 16
collisions trying to send a packet (i.e. the packet never got sent). This
is what the am7990.c driver does, except its collision error reporting
code is in an "#if 0" block instead of "#ifdef LEDEBUG". Nobody I talked
to seemed to know why :)

[ I did this in January 1998, but it never made it into the tree, so
I'm sending a PR this time :) There was a complaint about the
"collision error" message on port-mac68k yesterday... ]

--- /usr/src/sys/arch/mac68k/dev/if_mc.c	Wed Jul  8 06:09:57 1998
+++ if_mc.c	Tue Aug 18 21:24:01 1998
@@ -510,7 +510,9 @@
 	if (ir & CERR) {
+#ifdef MCDEBUG
 		printf("%s: collision error\n", sc->sc_dev.dv_xname);
@@ -557,6 +559,7 @@
 	else if (xmtfs & ONE)
 	else if (xmtfs & RTRY) {
+		printf("%s: excessive collisions\n", sc->sc_dev.dv_xname);
 		sc->sc_if.if_collisions += 16;