SUN-3s talking to SUN-2s with 3COM boards
Chris Torek
chris at umcp-cs.UUCP
Thu May 8 00:12:10 AEST 1986
In article <1359 at umcp-cs.UUCP> steve at maryland.UUCP (Steve D. Miller) writes:
>In article <1428 at unc.unc.UUCP> menges at unc.UUCP (John Menges) writes:
>> 2. What does it mean to "slow down the ethernet board"? ...
>
> Cthulhu knows what they mean by this ....
Actually, I suspect they mean something along these lines:
/*
* Start transmission on an ie.
*/
ieoutput(sc)
struct ie_softc *sc;
{
...
#ifdef UGLY_KLUDGE
if (sc->sc_flags & SF_NEEDDELAY) {
sc->sc_flags &= ~SF_NEEDDELAY;
timeout(ieoutput, (caddr_t) sc, 1);
return;
}
#endif
...
ie->ie_command_register = IE_DO_A_SEND;
#ifdef UGLY_KLUDGE
sc->sc_flags |= SF_NEEDDELAY;
#endif
}
This would introduce a two tick delay per packet, which gives a
maximum transmission rate of 25 packets per second (ugh). It might
work to do timeout(..., 0), giving 50 packets/sec; but that is
still awful.
Another alternative, if you do not mind wasting CPU, is
ie->ie_command_register = IE_DO_A_SEND;
#ifdef OTHER_UGLY_KLUDGE
DELAY(1000); /* ~1 ms, hope that is long enough */
#endif
I used something like the latter to get around a microcode bug in
UDA50s (though I no longer need to get around it: I now simply
avoid the situation in which the bug shows up).
--
In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 1415)
UUCP: seismo!umcp-cs!chris
CSNet: chris at umcp-cs ARPA: chris at mimsy.umd.edu
More information about the Comp.unix.wizards
mailing list