web-dev-qa-db-ja.com

サスペンド後の即時ウェイクアップ

私のDebian 9システムは、手動または自動でスリープモード(RAMにサスペンド)に入ってから2〜5秒で起動します。この問題は、スリープモードがどのように呼び出されたかに関係なく常に発生します:蓋を閉じる、電源ボタン、またはターミナルから。何が問題でしょうか?

ここにシステム情報があります:

$ Sudo dmidecode | grep -A3 '^System Information'
System Information
    Manufacturer: LENOVO
    Product Name: 20ET004LGE
    Version: ThinkPad E460
$ uname -a
Linux 4.9.0-3-AMD64 #1 SMP Debian 4.9.30-2+deb9u5 (2017-09-19) x86_64 GNU/Linux

問題の原因となるデバイスを確認するために、/proc/acpi/wakeupを確認し、echo DeviceName > /proc/acpi/wakeupを発行してすべてのデバイスを一時的に無効にしましたが、問題は解決しません。これは私が変更する前です:

$ cat /proc/acpi/wakeup 
Device  S-state   Status   Sysfs node
LID   S4    *enabled   platform:PNP0C0D:00
SLPB      S3    *enabled   platform:PNP0C0E:00
IGBE      S4    *enabled   pci:0000:00:1f.6
PXSX      S4    *disabled
PXSX      S4    *disabled  pci:0000:01:00.0
PXSX      S4    *disabled  pci:0000:02:00.0
        *disabled  platform:rtsx_pci_sdmmc.0
        *disabled  platform:rtsx_pci_ms.0
XHCI      S3    *enabled   pci:0000:00:14.0

$ lspci
    00:00.0 Host bridge: Intel Corporation Skylake Host Bridge/DRAM Registers (rev 08)
    00:02.0 VGA compatible controller: Intel Corporation HD Graphics 520 (rev 07)
    00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
    00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
    00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
    00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
    00:1c.0 PCI bridge: Intel Corporation Device 9d12 (rev f1)
    00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)
    00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)
    00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
    00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
    00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
    00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection I219-V (rev 21)
    01:00.0 Network controller: Intel Corporation Intel Dual Band Wireless-AC 3165 Plus Bluetooth (rev 99)
    02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader (rev 01)

最後に、マシンをスリープ状態にしてウェイクアップした後(/proc/acpi/wakeupを変更せずに)、dmesgの関連する部分を次に示します。

$ Sudo dmesg
[ 2591.034943] wlp1s0: deauthenticating from a4:2b:b0:ab:e2:99 by local choice (Reason: 3=DEAUTH_LEAVING)
[ 2591.044024] IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
[ 2593.048689] PM: Syncing filesystems ... done.
[ 2593.071217] PM: Preparing system for sleep (mem)
[ 2593.071490] (NULL device *): firmware: direct-loading firmware i915/skl_dmc_ver1_26.bin
[ 2593.071864] (NULL device *): firmware: direct-loading firmware iwlwifi-7265D-22.ucode
[ 2593.071880] Freezing user space processes ... (elapsed 0.002 seconds) done.
[ 2593.074134] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
[ 2593.075457] PM: Suspending system (mem)
[ 2593.075519] Suspending console(s) (use no_console_suspend to debug)
[ 2593.075955] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[ 2593.077328] sd 0:0:0:0: [sda] Stopping disk
[ 2593.264951] ACPI : EC: event blocked
[ 2593.313967] PM: suspend of devices complete after 238.174 msecs
[ 2593.336883] PM: late suspend of devices complete after 22.910 msecs
[ 2593.337306] ACPI : EC: interrupt blocked
[ 2593.338237] xhci_hcd 0000:00:14.0: System wakeup enabled by ACPI
[ 2593.378029] PM: noirq suspend of devices complete after 41.142 msecs
[ 2593.378652] ACPI: Preparing to enter system sleep state S3
[ 2593.399563] ACPI : EC: EC stopped
[ 2593.399564] PM: Saving platform NVS memory
[ 2593.399570] Disabling non-boot CPUs ...
[ 2593.400953] smpboot: CPU 1 is now offline
[ 2593.403402] smpboot: CPU 2 is now offline
[ 2593.405121] smpboot: CPU 3 is now offline
[ 2593.408016] ACPI: Low-level resume complete
[ 2593.408131] ACPI : EC: EC started
[ 2593.408131] PM: Restoring platform NVS memory
[ 2593.408865] Suspended for 3.452 seconds
[ 2593.410052] Enabling non-boot CPUs ...
[ 2593.410111] x86: Booting SMP configuration:
[ 2593.410111] smpboot: Booting Node 0 Processor 1 APIC 0x2
[ 2593.413738]  cache: parent cpu1 should not be sleeping
[ 2593.418428] CPU1 is up
[ 2593.418467] smpboot: Booting Node 0 Processor 2 APIC 0x1
[ 2593.421003]  cache: parent cpu2 should not be sleeping
[ 2593.425788] CPU2 is up
[ 2593.425826] smpboot: Booting Node 0 Processor 3 APIC 0x3
[ 2593.428373]  cache: parent cpu3 should not be sleeping
[ 2593.433092] CPU3 is up
[ 2593.436236] ACPI: Waking up from system sleep state S3
[ 2593.480811] ACPI : EC: interrupt unblocked
[ 2593.536245] xhci_hcd 0000:00:14.0: System wakeup disabled by ACPI
[ 2593.536310] PM: noirq resume of devices complete after 55.607 msecs
[ 2593.541114] PM: early resume of devices complete after 4.771 msecs
[ 2593.541223] ACPI : EC: event unblocked
[ 2593.541548] iwlwifi 0000:01:00.0: RF_KILL bit toggled to enable radio.
[ 2593.542111] sd 0:0:0:0: [sda] Starting disk
[ 2593.542645] rtc_cmos 00:02: System wakeup disabled by ACPI
[ 2593.548069] [drm] GuC firmware load skipped
[ 2593.768567] usb 1-7: reset high-speed USB device number 2 using xhci_hcd
[ 2593.856890] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 2593.857497] ata1.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded
[ 2593.857500] ata1.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
[ 2593.857545] ata1.00: ACPI cmd ef/10:09:00:00:00:a0 (SET FEATURES) succeeded
[ 2593.857767] ata1.00: supports DRM functions and may not be fully accessible
[ 2593.859546] ata1.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded
[ 2593.859548] ata1.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
[ 2593.859591] ata1.00: ACPI cmd ef/10:09:00:00:00:a0 (SET FEATURES) succeeded
[ 2593.859806] ata1.00: supports DRM functions and may not be fully accessible
[ 2593.860711] ata1.00: configured for UDMA/133
[ 2594.130430] PM: resume of devices complete after 589.312 msecs
[ 2594.130711] PM: Finishing wakeup.
[ 2594.130712] Restarting tasks ... 
[ 2594.132323] [drm] RC6 on
[ 2594.133646] done.
[ 2594.754297] e1000e: enp0s31f6 NIC Link is Down
[ 2594.756068] IPv6: ADDRCONF(NETDEV_UP): enp0s31f6: link is not ready
[ 2594.969138] IPv6: ADDRCONF(NETDEV_UP): enp0s31f6: link is not ready
[ 2594.972566] IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
[ 2594.974923] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2594.975229] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.043353] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.043657] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.064475] IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
[ 2595.074769] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.075066] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.140447] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.140753] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[ 2595.156361] IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
[ 2595.237719] IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
[ 2598.905323] IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
[ 2598.986638] wlp1s0: authenticate with a4:2b:b0:ab:e2:99
[ 2598.990338] wlp1s0: send auth to a4:2b:b0:ab:e2:99 (try 1/3)
[ 2598.992121] wlp1s0: authenticated
[ 2598.996133] wlp1s0: associate with a4:2b:b0:ab:e2:99 (try 1/3)
[ 2598.999926] wlp1s0: RX AssocResp from a4:2b:b0:ab:e2:99 (capab=0x431 status=0 aid=1)
[ 2599.003864] wlp1s0: associated
[ 2599.003986] IPv6: ADDRCONF(NETDEV_CHANGE): wlp1s0: link becomes ready
9
kmotoko

この問題が解決されたかどうかはわかりませんが、ThinkPad T460のDebian buster/sidでも同じことが起こりました。私のdmesgの出力はあなたの出力と同じではありませんでしたが、重要なことは同じでした

ACPI: EC: event blocked

ライン。 AskUbuntuのこのスレッド ごとに、/proc/acpi/wakeupのウェイクアップトリガーとしてXHCIを無効にしました:

$ grep enabled /proc/acpi/wakeup | cut -f 1
LID
SLPB
XHCI
$ Sudo su
# echo XHCI > /proc/acpi/wakeup

そしてそれは私のためにそれを修正しました。奇妙なことに、これはマシンにUSBデバイスが接続されている場合にのみ問題になるはずでしたが、私は間違いなくそうでした。


EDIT:気にしないで、/proc/acpi/wakeupのすべての行を無効にしようとした部分を忘れてしまいました。

3
Ryan Lue

問題が解決しました。どういうわけかキーボードだった。 Fキーの1つが壊れていたので、このキーが常に入力を送信しているかどうかをテストすることにしました。次に、ターミナルでキーボード入力をテストしました。キーボードに触れていない場合、入力は表示されませんでした。それは事実でしたが、キーボードを新しいものに交換したときに、PCをスリープ状態にすることができました。これは、私が推測するThinkpad BIOSに関連している可能性があります。OSで何を試しても、スリープから復帰するキーボード入力を確認できなかったためです。

2
kmotoko