Fix Runtime PM for r8169
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
HWE Next |
Fix Released
|
Undecided
|
Unassigned | |||
linux (Ubuntu) | ||||||
Xenial |
Invalid
|
Undecided
|
Unassigned | |||
Artful |
Won't Fix
|
Medium
|
Unassigned | |||
Bionic |
Triaged
|
Medium
|
Unassigned | |||
linux-oem (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | |||
Xenial |
Fix Released
|
Undecided
|
Unassigned | |||
Bionic |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
===SRU Justification===
[Impact]
r8169 stays in D0 even when no ethernet cable is plugged in. This drains
lots of power (~3W). The tested laptop uses 5.5W when r8169 is in D0,
1.8W when r8169 is in D3. The power saved is substantial.
[Fix]
Improved rumtime PM logic to let the device gets suspended (D3) when the
port is not in used and the link is down.
[Test Case]
The chip version is 8168h/8111h.
Test when no ethernet gets plugged.
Powertop shows power consumption is roughly 5.5W.
lspci shows the device is in D0.
With the patch,
The power consumption is reduced to 1.8W.
lspci shows the device is in D3, PME# is correctly enabled.
Plug ethernet cable can corretly wake up the device.
Unplug the cable, the device gets suspended to D3 correctly.
[Regression Potential]
Medium.
- r8169 is so ubiquitous, with lots of different chip versions. It's
hard to test all of them.
- PCI D3 needs system firmware (ACPI) support, this might hit some
plaform bugs.
- the code is still in v4.16-rc*, so it's not well tested by end users.
tags: | added: originate-from-1755720 somerville |
Changed in linux (Ubuntu Xenial): | |
status: | New → Triaged |
Changed in linux (Ubuntu Artful): | |
status: | New → Triaged |
Changed in linux (Ubuntu Bionic): | |
status: | Incomplete → Triaged |
Changed in linux (Ubuntu Xenial): | |
importance: | Undecided → Medium |
Changed in linux (Ubuntu Artful): | |
importance: | Undecided → Medium |
Changed in linux (Ubuntu Bionic): | |
importance: | Undecided → Medium |
Changed in linux-oem (Ubuntu Artful): | |
status: | New → Fix Committed |
no longer affects: | linux-oem (Ubuntu Xenial) |
no longer affects: | linux-oem (Ubuntu) |
no longer affects: | linux-oem (Ubuntu Artful) |
no longer affects: | linux-oem (Ubuntu Bionic) |
no longer affects: | linux (Ubuntu Xenial) |
Changed in linux (Ubuntu Xenial): | |
status: | New → Invalid |
Changed in linux-oem (Ubuntu Xenial): | |
status: | New → Fix Committed |
no longer affects: | linux (Ubuntu Bionic) |
no longer affects: | linux (Ubuntu) |
Changed in linux-oem (Ubuntu): | |
assignee: | nobody → Kai-Heng Feng (kaihengfeng) |
Changed in linux-oem (Ubuntu): | |
assignee: | Kai-Heng Feng (kaihengfeng) → nobody |
Changed in linux-oem (Ubuntu): | |
status: | New → Fix Released |
Changed in hwe-next: | |
status: | New → Fix Released |
This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:
apport-collect 1757422
and then change the status of the bug to 'Confirmed'.
If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.
This change has been made by an automated script, maintained by the Ubuntu Kernel Team.