All,

I've converted hme to the common MII framework (and hence to Brussels). This fixes at least one bug (it didn't work at forced 10 Mbps!), and cleans up a *a lot* of code. hme shrinks by about 2200 lines.

The webrev is here:

http://cr.opensolaris.org/~gdamore/hme-mii

I'd like to hear from folks who can review, or help test it.

Other minor changes in the code: the never-give-up mode is disabled now, since that could potentially result in a deadlock. By disabling that mode (and allowing the MAC to drop packets), we simply the code. As a result, I also felt good about deleting the tx watchdog timer, which was tied together with the link check timer. (I don't think anyone has seen this kind of TX hang in a very long time -- note that it would have taken 90 seconds to detect the hang, which is far too long for a production device anyway. If someone decides we need it, I'll add a tx watchdog timer with ddi_periodic, but at the moment I don't think they are needed.

Also, we don't use mif polling. The common MII layer polls about once a second, and that is plenty fast enough for detecting a loss of link. This also simplifies some code.

The pace_count tunable was not used, so I've removed it.

I cleaned up some unused messages as well.

I've tested all link modes using a Dell PowerConnect 24 switch with a PCI QFE card (Lucent LU6612 phys). It all seems to work well now.

I'm hoping I can get this into the next build.

Thanks!

   -- Garrett
_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to