]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
It seems that RealTek 8129/8139 chip reports invalid length of
authoryongari <yongari@FreeBSD.org>
Thu, 10 Apr 2008 01:06:05 +0000 (01:06 +0000)
committeryongari <yongari@FreeBSD.org>
Thu, 10 Apr 2008 01:06:05 +0000 (01:06 +0000)
commit549884e502262465ed3c851a9c35efc41f6afba3
tree2cd95effdbaf18d86d3300f835979337d309a3dd
parentb65786c8a824a1e9865c7e0083a5212d243f706e
It seems that RealTek 8129/8139 chip reports invalid length of
received frame under certain conditions. wpaul said the length
0xfff0 is special meaning that indicates hardware is in the
process of copying a packet into host memory. But it seems
there are other cases that hardware is busy or stuck in bad
situation even if the received frame length is not 0xfff0.
To work-around this condition, add a check that verifys that
recevied frame length is in valid range. If received length is out
of range reinitialize hardware to recover from stuck condition.

Reported by: Mike Tancsa ( mike AT sentex DOT net )
Tested by: Mike Tancsa
Obtained from: OpenBSD
MFC after: 1 week
sys/pci/if_rl.c