[Impact]
The Ethernet works after S3 with kernel 4.15.0-33.36, and fails with kernel 4.15.0.43.64.
There is no interrupt while plug/unplug Ethernet cable after S3, so it looks like a regression after 4.15.0-33.36.
[Fix]
Check changelog and found there are 2 commits introduced from 4.15.0-35.38 might be suspicious
* r8169 no internet after suspending (LP: #1779817)
- r8169: don't use MSI-X on RTL8168g
- r8169: don't use MSI-X on RTL8106e
And check the upstream log and found the 2 MSI-X commits had been all reverted, since below commit claims it fixes the MSI-X interrupt issue which is already in Bionic kernel.
083874549fdf PCI: Reprogram bridge prefetch registers on resume
So, I reverted the 2 MSI-X commits and found the Ethernet works again after S3.
The upstream commits to revert the 2 MSI-X can't be clean cherry picked, so I revert the commits directly in Bionic kernel.
9675931e6b65 r8169: re-enable MSI-X on RTL8168g
d49c88d7677b r8169: Enable MSI-X on RTL8106e
[Regression Potential]
Low, the 2 disable MSI-X commits are workarounds, and now we have proper way to fix the issue, so it should be fine to revert them.
[Impact]
The Ethernet works after S3 with kernel 4.15.0-33.36, and fails with kernel 4.15.0.43.64.
There is no interrupt while plug/unplug Ethernet cable after S3, so it looks like a regression after 4.15.0-33.36.
[Fix]
Check changelog and found there are 2 commits introduced from 4.15.0-35.38 might be suspicious
* r8169 no internet after suspending (LP: #1779817)
- r8169: don't use MSI-X on RTL8168g
- r8169: don't use MSI-X on RTL8106e
And check the upstream log and found the 2 MSI-X commits had been all reverted, since below commit claims it fixes the MSI-X interrupt issue which is already in Bionic kernel.
083874549fdf PCI: Reprogram bridge prefetch registers on resume
So, I reverted the 2 MSI-X commits and found the Ethernet works again after S3.
The upstream commits to revert the 2 MSI-X can't be clean cherry picked, so I revert the commits directly in Bionic kernel.
9675931e6b65 r8169: re-enable MSI-X on RTL8168g
d49c88d7677b r8169: Enable MSI-X on RTL8106e
[Regression Potential]
Low, the 2 disable MSI-X commits are workarounds, and now we have proper way to fix the issue, so it should be fine to revert them.