After upgrading the kernel to v4.19 we started seeing increased packet
latency on two machines with ASUS H87M-E motherboards with on-board Realtek
Gigabit Ethernet. This didn't happen with v4.18. (More details, including
kernel log and lspci output at
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=925496 )

Bisecting revealed that commit

 a99790bf5c7f3d68d8b01e015d3212a98ee7bd57  r8169: Reinstate ASPM Support

provoked this change in behaviour.

If I patch v4.9.31's drivers/net/ethernet/realtek/r8169.c
rtl_hw_aspm_clkreq_enable function to never enable the clocks (which,
AFAICT, is equivalent to reverting the aforementioned commit) then packet
latency is normal.

The increased packet latency can also be resolved by:

1. Running 'ethtool -C eth0 rx-usecs 0 rx-frames 1'

2. Disabling "EPU Power Saving Mode" in the BIOS (on the Ai Tweaker page.)
   This option is enabled when the "ASUS Optimal" setting is selected on
   the BIOS front page.

but neither of these solutions are ideal because they require the user to
realise that there's a problem and discover these solutions.

Is there a way to fix the code to work correctly with this motherboard even
with "EPU Power Saving Mode" enabled?

Thanks.

Mike.

Reply via email to