我知道这个问题在很多地方都有提到,但是似乎没有一个解决方案对我有用。我使用的是一台旧的 Core 2 Duo 笔记本电脑,它拒绝挂起/休眠。相反,它会立即唤醒。
我做的第一件事是检查 dmesg 输出,其内容为:
[11090.873908] sd 0:0:0:0: [sda] Stopping disk
[11090.873974] cfg80211: Calling CRDA to update world regulatory domain
[11090.948067] tpm_tis 00:01: Error (38) sending savestate before suspend
[11090.948073] __pnp_bus_suspend(): tpm_pm_suspend+0x0/0x1c0 returns 38
[11090.948077] dpm_run_callback(): pnp_bus_suspend+0x0/0x20 returns 38
[11090.948080] PM: Device 00:01 failed to suspend: error 38
[11093.165642] PM: Some devices failed to suspend, or early wake event detected
[11093.167005] sd 0:0:0:0: [sda] Starting disk
快速谷歌搜索此代码片段中的一些引述,没有找到任何可以帮助我的东西,但你可以清楚地看到出了问题。接下来是检查唤醒设备(cat /proc/acpi/wakeup)
Device S-state Status Sysfs node
HDEF S4 *disabled pci:0000:00:1b.0
PXS3 S5 *enabled pci:0000:04:00.0
LANC S0 *disabled
MODM S3 *disabled
禁用唯一启用的设备(不知道它代表什么)没有任何效果。我也尝试过手动使用
echo mem > /sys/power/state
echo disk > /sys/power/state
这两行代码的效果相同:立即唤醒。还有什么明显的效果我还没试过吗?
顺便说一句:内核 3.13.0-34-generic