[PATCH 0/3][SRU][Oracular] Intel(R) PRO/1000 I219 ethernet adapter [8086:550c] may block entrance of modern standby
You-Sheng Yang
vicamo.yang at canonical.com
Mon Oct 21 04:23:55 UTC 2024
BugLink: https://bugs.launchpad.net/bugs/2081130
[Impact]
Systems with Intel(R) PRO/1000 I219 ethernet adapter [8086:550c] may block
entrance of modern standby.
[Fix]
This is a composition of multiple factors. For the e1000e driver to suspend
correctly, it takes:
* v6.12-rc1 commit [cedf233530cc3](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cedf233530cc375343c5a0b612fe94392f246c99) ("platform/x86: intel/pmc: Ignore all LTRs during suspend")
* v6.12-rc3 commit [9d9e5347b0354](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9d9e5347b035412daa844f884b94a05bac94f864) ("e1000e: change I219 (19) devices to ADP")
And there is also a problem in APIC working in deadline mode. When shutting down
the APIC timer, both APIC_LVT_MASKED and clear the counter register should be
done, and this takes:
* https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=x86/urgent&id=ffd95846c6ec6cf1f93da411ea10d504036cab42 ("x86/apic: Always explicitly disarm TSC-deadline timer")
[Test Case]
```
$ sudo cat /sys/power/suspend_stats/total_hw_sleep
0
$ sudo rtcwake -m freeze -s 120
# wait ...
$ sudo cat /sys/power/suspend_stats/total_hw_sleep
117855416
$ sudo cat /sys/kernel/debug/pmc_core/package_cstate_show
...
Package C10 : 117924661
```
[Where problems could occur]
The first part can be treated as a new hardware support. The APIC timer part is
a common issue probably tracing back to the Nehalem microm architecture. It has
been landed to x86/urgent tree and will be in v6.12-rc4. It's also cc-stabled.
[Other Info]
This is cc-stabled. We're probably going to meet it again for maybe 6.8 LTS
kernels. Before that, SRU for OEM-6.11 hardware enablement.
Vitaly Lifshits (1):
e1000e: change I219 (19) devices to ADP
Xi Pardee (1):
platform/x86: intel/pmc: Ignore all LTRs during suspend
Zhang Rui (1):
UBUNTU: SAUCE: x86/apic: Always explicitly disarm TSC-deadline timer
arch/x86/kernel/apic/apic.c | 14 +++++-
drivers/net/ethernet/intel/e1000e/hw.h | 4 +-
drivers/net/ethernet/intel/e1000e/netdev.c | 4 +-
drivers/platform/x86/intel/pmc/core.c | 53 ++++++++++++++++++++++
drivers/platform/x86/intel/pmc/core.h | 2 +
5 files changed, 72 insertions(+), 5 deletions(-)
--
2.45.2
More information about the kernel-team
mailing list