Le 01/07/2010 22:49, Kenneth R Westerback a icrit :
I've no diff to send, i made to much change in the code to get enough
debug verbosity but i've the analysis of the problem from the post i
made on misc:
Form misc ML:
-------- Message original --------
Sujet: Re: Intel PRO/1000 QP on Dell R610 and OpenBSD 4.7
Date : Thu, 01 Jul 2010 22:18:42 +0200
De : Fridiric URBAN <frederic.urban@ircad.u-strasbg.fr>
Pour : misc@openbsd.org
Ok it's confirmed, the PHY used on the card has a strange behavior. Each
time that the function em_read_phy_reg() is used there is a risk of
failure, The PHY is more often busy than useall. I added some debug
information in the code which show the return code of em_read_phy_reg()
and sometimes E1000_ERR_PHY is returned. This function is called very
very often (which is obvious). When it happends the interface won't work.
I partially fixed the hardware initialization by adding a timed retry
when the PHY is busy (in em_setup_copper_link()), but there is still
lots of occurrence of em_read_phy_reg() that need to be modified (ie: I
already had error in em_copper_link_autoneg()) and it's the first time I
put my finger inside a device driver :E So maybe there is a better way
to fix it ! We need a kernel guru !!! :D
Fred
Btw, I took the idea of the timed retry of em_read_phy_reg() from
FreeBSD igb driver, in their equivalent of em_setup_copper_link(), they
use it.
Previous message: [thread] [date] [author] Next message: [thread] [date] [author]
Messages in current thread:
Re: About the bug #6409 -got some informations (Erratum), Frédéric URBAN, (Thu Jul 1, 1:57 pm)