]> git.baikalelectronics.ru Git - kernel.git/commit
r8169:fix "rtl_counters_cond == 1 (loop: 1000, delay: 10)" log spam.
authorChun-Hao Lin <hau@realtek.com>
Wed, 24 Feb 2016 06:18:42 +0000 (14:18 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 25 Feb 2016 21:17:45 +0000 (16:17 -0500)
commiteaa98342f589695f379768464d5689abb1485944
treed21bd5a9bb76d2d0a6f0da759b779d111dc06b9d
parent0f014288991620c950927a76ccfdb1d03744d782
r8169:fix "rtl_counters_cond == 1 (loop: 1000, delay: 10)" log spam.

There will be a log spam when there is no cable plugged. Please refer to
following links. https://bugzilla.kernel.org/show_bug.cgi?id=104351
https://bugzilla.kernel.org/show_bug.cgi?id=107421

This issue is caused by runtime power management. When there is no cable
plugged, the driver will be suspend (runtime suspend) by OS and NIC will be
put into the D3 state. During this time, if OS call rtl8169_get_stats64()
to dump tally counter, because NIC is in D3 state, the register value read
by driver will return all 0xff. This will let driver think tally counter
flag is not toggled and then sends the warning message "rtl_counters_cond
== 1 (loop: 1000, delay: 10)" to kernel log.

For fixing this issue, 1.add checking driver's pm runtime status in
rtl8169_get_stats64(). 2.dump tally counter before going runtime suspend
for counter accuracy in runtime suspend.

Signed-off-by: Chunhao Lin <hau@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/realtek/r8169.c