Re: [net drvr] starfire driver update for 2.5.60

Jeff Garzik (jgarzik@pobox.com)
Thu, 13 Feb 2003 19:38:34 -0500


I'm curious about the ring-wrapping code... the comments indicate you
may not have fully investigated the ring-wrapping semantics?

There are two predominant styles, the "Becker style", which relies on
proper unsigned integer subtraction even when your buffer-head index is
numerically less than your buffer-tail, and the "DaveM" style which hide
a couple masks behind NEXT_TX() style macros. Either of these work, and
are quite well thought out and well tested.

Neither style requires any special handling of "wrap" cases, which your
patch adds.. Your patch adds things like arbitrary padding of 4 tx
slots, where you might as well add a comment "/* for luck! */". Why not
actually nail down the problems the code is obvious working around?
Such "knobs" may be tweaked enough to be stable in test setups, but
without actually knowing why you are having problems with Tx start/stop
at the edge cases, the driver won't begin to approach true stability.

A minor style point too, "s/struct foodesc/foodesc/" is going the
opposite of preferred.

This is why I have not applied your patch when it was sent to me...

Jeff

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/