Laptop lid close does not work UNLESS i continously read /proc/acpi/button/lid/LID0/state

Laptop: MSI Modern 15 A5M

Kindly please read to the end to get the full picture of the problem.

This is not an issue with sleep/suspend itself, because invoked manually does work correctly.

This has been happening ever since i got the laptop a while ago, and the issue persists through several months of updates.

Basically, sleep on lid close does not work, closing the lid has no effect, and the lid close seems not to be detected (properly).

For some reason, acpid service was disabled by default when i installed so I’m not changing this, and my workaround works without acpid.

If i manually start acpid service, and run acpi_listen there is no output / events reported by acpi_listen. the problem still persists.

even though acpid service log shows ACPI group/action undefined: button when i close and open the lid.

so something is working somerhere.

HOWEVER.

if i open a terminal and just run “watch cat /proc/acpi/button/lid/LID0/state” so the lid state is continutly pooled, magically, everything works, but only, as long as the script is running.

even the acpi_listen starts to properly show lid open/close.

This honestly makes 0 sense to me.

I’m guessing something is pooling /proc/acpi with like inotify but the kernel driver (?) only updates that value on the fly when file is opened and read from ?

I just had a script running that cats the /proc/acpi(…) and it “works” but that seems like a really dumb workaround and not a proper fix.

Hi and welcome to the forum :+1:


To start please provide your system info:


Only after that people can try to help…
Take Note that if you are not using Manjaro, it will be hard to get any help here because this forum is Manjaro specific.
(Yes some also use or used other distro’s but not all, anyhow this is not a generic Linux support forum :wink: )

Operating System: Manjaro Linux
KDE Plasma Version: 5.26.5
KDE Frameworks Version: 5.102.0
Qt Version: 5.15.8
Kernel Version: 5.15.91-1-MANJARO (64-bit)
Graphics Platform: X11
Processors: 16 × AMD Ryzen 7 5700U with Radeon Graphics
Memory: 30,7 GiB of RAM
Graphics Processor: AMD Radeon Graphics
Manufacturer: Micro-Star International Co., Ltd.
Product Name: Modern 15 A5M
System Version: REV:1.0

uname -a
Linux gst-modern15a5m 5.15.91-1-MANJARO #1 SMP PREEMPT Wed Feb 1 12:03:19 UTC 2023 x86_64 GNU/Linux

I don’t understand why links are bloked here, this is list of all my installed packages:

https : // bpa . st / IU3IA

See my personal message…

Thank you the instructions, I’ve missed it

There is some more info:

LANG=C inxi --admin --verbosity=7 --filter --width                                                                                                                                                                           ✔ 
System:
  Kernel: 5.15.91-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-5.15-x86_64
    root=UUID=81c28827-d36a-4261-86b3-70b91c90601e rw quiet
    resume=UUID=d78c49ea-69ce-4083-8fe7-11753674d7e6 udev.log_priority=3
    acpi_backlight=vendor video.use_native_backlight=1
  Desktop: KDE Plasma v: 5.26.5 tk: Qt v: 5.15.8 wm: kwin_x11 vt: 1 dm: SDDM
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: Micro-Star product: Modern 15 A5M v: REV:1.0
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: Micro-Star model: MS-155L v: REV:1.0 serial: <superuser required>
    UEFI: American Megatrends LLC. v: E155LAMS.113 date: 08/30/2022
Battery:
  ID-1: BAT1 charge: 42.4 Wh (88.1%) condition: 48.1/52.4 Wh (91.8%)
    volts: 12.7 min: 11.4 model: MSI BIF0_9 type: Li-ion serial: N/A
    status: charging
Memory:
  RAM: total: 30.72 GiB used: 8.95 GiB (29.1%)
  RAM Report: permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: AMD Ryzen 7 5700U with Radeon Graphics bits: 64 type: MT MCP
    arch: Zen 2 gen: 3 level: v3 note: check built: 2020-22
    process: TSMC n7 (7nm) family: 0x17 (23) model-id: 0x68 (104) stepping: 1
    microcode: 0x8608103
  Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
    L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB desc: 8x512 KiB L3: 8 MiB
    desc: 2x4 MiB
  Speed (MHz): avg: 1628 high: 3425 min/max: 1400/4370 boost: enabled
    scaling: driver: acpi-cpufreq governor: schedutil cores: 1: 1510 2: 2477
    3: 3425 4: 1397 5: 1397 6: 1397 7: 1397 8: 1658 9: 1397 10: 1397 11: 1397
    12: 1397 13: 1600 14: 1416 15: 1397 16: 1397 bogomips: 57504
  Flags: 3dnowprefetch abm adx aes aperfmperf apic arat avic avx avx2 bmi1
    bmi2 bpext cat_l3 cdp_l3 clflush clflushopt clwb clzero cmov cmp_legacy
    constant_tsc cpb cpuid cqm cqm_llc cqm_mbm_local cqm_mbm_total
    cqm_occup_llc cr8_legacy cx16 cx8 de decodeassists extapic extd_apicid
    f16c flushbyasid fma fpu fsgsbase fxsr fxsr_opt ht hw_pstate ibpb ibrs ibs
    irperf lahf_lm lbrv lm mba mca mce misalignsse mmx mmxext monitor movbe
    msr mtrr mwaitx nonstop_tsc nopl npt nrip_save nx osvw overflow_recov pae
    pat pausefilter pclmulqdq pdpe1gb perfctr_core perfctr_llc perfctr_nb
    pfthreshold pge pni popcnt pse pse36 rapl rdpid rdpru rdrand rdseed rdt_a
    rdtscp rep_good sep sha_ni skinit smap smca smep ssbd sse sse2 sse4_1
    sse4_2 sse4a ssse3 stibp succor svm svm_lock syscall tce topoext tsc
    tsc_scale umip v_spec_ctrl v_vmsave_vmload vgif vmcb_clean vme vmmcall
    wbnoinvd wdt xgetbv1 xsave xsavec xsaveerptr xsaveopt xsaves
  Vulnerabilities:
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: retbleed mitigation: untrained return thunk; SMT enabled with STIBP
    protection
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl and seccomp
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, STIBP:
    always-on, RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: AMD Lucienne vendor: Micro-Star MSI driver: amdgpu v: kernel
    arch: GCN-5.1 code: Vega-2 process: TSMC n7 (7nm) built: 2018-21 pcie: gen: 3
    speed: 8 GT/s lanes: 16 link-max: gen: 4 speed: 16 GT/s ports:
    active: eDP-1 empty: DP-1,DP-2,HDMI-A-1 bus-ID: 04:00.0 chip-ID: 1002:164c
    class-ID: 0300 temp: 40.0 C
  Device-2: Acer HD Webcam type: USB driver: uvcvideo bus-ID: 1-4:2
    chip-ID: 5986:211c class-ID: 0e02
  Display: x11 server: X.Org v: 21.1.6 compositor: kwin_x11 driver: X:
    loaded: amdgpu unloaded: modesetting alternate: fbdev,vesa dri: radeonsi
    gpu: amdgpu display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 mapped: eDP model: AU Optronics 0x2e8d built: 2019
    res: 1920x1080 hz: 60 dpi: 142 gamma: 1.2 size: 344x194mm (13.54x7.64")
    diag: 395mm (15.5") ratio: 16:9 modes: max: 1920x1080 min: 640x480
  API: OpenGL v: 4.6 Mesa 22.3.4 renderer: AMD Radeon Graphics (renoir LLVM
    15.0.7 DRM 3.42 5.15.91-1-MANJARO) direct render: Yes
Audio:
  Device-1: AMD Renoir Radeon High Definition Audio driver: snd_hda_intel
    v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4
    speed: 16 GT/s bus-ID: 04:00.1 chip-ID: 1002:1637 class-ID: 0403
  Device-2: AMD ACP/ACP3X/ACP6x Audio Coprocessor vendor: Micro-Star MSI
    driver: N/A alternate: snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x pcie:
    gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4 speed: 16 GT/s
    bus-ID: 04:00.5 chip-ID: 1022:15e2 class-ID: 0480
  Device-3: AMD Family 17h/19h HD Audio vendor: Micro-Star MSI
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
    link-max: gen: 4 speed: 16 GT/s bus-ID: 04:00.6 chip-ID: 1022:15e3
    class-ID: 0403
  Sound API: ALSA v: k5.15.91-1-MANJARO running: yes
  Sound Server-1: JACK v: 1.9.21 running: no
  Sound Server-2: PulseAudio v: 16.1 running: yes
  Sound Server-3: PipeWire v: 0.3.65 running: yes
Network:
  Device-1: MEDIATEK MT7921K Wi-Fi 6E 80MHz driver: mt7921e v: kernel pcie:
    gen: 2 speed: 5 GT/s lanes: 1 bus-ID: 01:00.0 chip-ID: 14c3:0608
    class-ID: 0280
  IF: wlp1s0 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: noprefixroute scope: link
  Device-2: Realtek RTL8153 Gigabit Ethernet Adapter type: USB driver: r8152
    bus-ID: 4-2:2 chip-ID: 0bda:8153 class-ID: 0000 serial: <filter>
  IF: enp4s0f4u2 state: up speed: 1000 Mbps duplex: full mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: noprefixroute scope: link
  IF-ID-1: lxcbr0 state: down mac: <filter>
  IP v4: <filter> scope: global broadcast: <filter>
  IF-ID-2: virbr0 state: down mac: <filter>
  Message: Output throttled. IPs: 1; Limit: 10; Override: --limit [1-x;-1
    all]
  WAN IP: <filter>
Bluetooth:
  Device-1: MediaTek Wireless_Device type: USB driver: btusb v: 0.8
    bus-ID: 3-3:2 chip-ID: 0e8d:0608 class-ID: e001 serial: <filter>
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 953.88 GiB used: 552.02 GiB (57.9%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Kingston model: OM8PCP3512F-AI1
    size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: ECFK52.8 temp: 30.9 C scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: HP model: SSD S700 Pro 512GB
    size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    type: SSD serial: <filter> rev: 0D scheme: GPT
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 442.85 GiB size: 434.83 GiB (98.19%)
    used: 228.04 GiB (52.4%) fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2
    label: N/A uuid: 81c28827-d36a-4261-86b3-70b91c90601e
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 312 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
    label: NO_LABEL uuid: 17F8-3433
  ID-3: /mnt/old raw-size: 460.64 GiB size: 452.34 GiB (98.20%)
    used: 323.98 GiB (71.6%) fs: ext4 dev: /dev/sda2 maj-min: 8:2 label: N/A
    uuid: c1388b79-f291-4f65-9876-c75e2894a4b4
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
  ID-1: swap-1 type: partition size: 33.79 GiB used: 0 KiB (0.0%)
    priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3 label: swap
    uuid: d78c49ea-69ce-4083-8fe7-11753674d7e6
Unmounted:
  ID-1: /dev/sda1 maj-min: 8:1 size: 300 MiB fs: vfat label: NO_LABEL
    uuid: D658-6FA3
  ID-2: /dev/sda3 maj-min: 8:3 size: 16 GiB fs: swap label: N/A
    uuid: 1407866b-992d-4328-a3dc-78176292255f
USB:
  Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 4 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Device-1: 1-4:2 info: Acer HD Webcam type: Video driver: uvcvideo
    interfaces: 2 rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 5986:211c
    class-ID: 0e02
  Hub-2: 2-0:1 info: Super-speed hub ports: 2 rev: 3.1 speed: 10 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
  Hub-3: 3-0:1 info: Hi-speed hub with single TT ports: 4 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Device-1: 3-3:2 info: MediaTek Wireless_Device type: Bluetooth
    driver: btusb interfaces: 3 rev: 2.1 speed: 480 Mb/s power: 100mA
    chip-ID: 0e8d:0608 class-ID: e001 serial: <filter>
  Hub-4: 4-0:1 info: Super-speed hub ports: 2 rev: 3.1 speed: 10 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
  Device-1: 4-2:2 info: Realtek RTL8153 Gigabit Ethernet Adapter
    type: Network driver: r8152 interfaces: 1 rev: 3.0 speed: 5 Gb/s power: 288mA
    chip-ID: 0bda:8153 class-ID: 0000 serial: <filter>
Sensors:
  System Temperatures: cpu: 48.5 C mobo: N/A gpu: amdgpu temp: 40.0 C
  Fan Speeds (RPM): N/A
Info:
  Processes: 404 Uptime: 13h 0m wakeups: 11 Init: systemd v: 252
  default: graphical tool: systemctl Compilers: gcc: 12.2.1 clang: 15.0.7
  Packages: pm: pacman pkgs: 1685 libs: 391 tools: pamac,yay pm: flatpak
  pkgs: 0 Shell: Zsh v: 5.9 running-in: yakuake inxi: 3.3.24

Some additional informations i managed to find in dmesg when fiddling with acpi:

[ 6601.022171] ACPI Error: No handler for Region [VRTC] (000000006f2c3d34) [SystemCMOS] (20210730/evregion-130)
[ 6601.022186] ACPI Error: Region SystemCMOS (ID=5) has no handler (20210730/exfldio-261)
[ 6601.022201] ACPI Error: Aborting method \_SB.PCI0.SBRG.EC._Q9A due to previous error (AE_NOT_EXIST) (20210730/psparse-529)
[ 6603.042117] ACPI Error: No handler for Region [VRTC] (000000006f2c3d34) [SystemCMOS] (20210730/evregion-130)
[ 6603.042132] ACPI Error: Region SystemCMOS (ID=5) has no handler (20210730/exfldio-261)
[ 6603.042148] ACPI Error: Aborting method \_SB.PCI0.SBRG.EC._Q9A due to previous error (AE_NOT_EXIST) (20210730/psparse-529)
[ 6605.058794] ACPI Error: No handler for Region [VRTC] (000000006f2c3d34) [SystemCMOS] (20210730/evregion-130)
[ 6605.058808] ACPI Error: Region SystemCMOS (ID=5) has no handler (20210730/exfldio-261)
[ 6605.058822] ACPI Error: Aborting method \_SB.PCI0.SBRG.EC._Q9A due to previous error (AE_NOT_EXIST) (20210730/psparse-529)

And another one that does not always happen, but happened at least once:

[ 6654.118946] ACPI: button: The lid device is not compliant to SW_LID.

I have now manually started the disabled acpid service, because it seems to produce some debug info related to the problem, even though starting acpid does not fix the problem, and does not prevent the workaround from working either

After starting acpid, there is no, or no meanigfull output from journalctl -f

This part of output from journalctl -f that happens immadiately after applying my workaround ( running “watch cat /proc/acpi/button/lid/LID0/state” ), this happens after starting the command, BEFORE I do anything with the lid:

lut 08 15:55:48 gst-modern15a5m root[56676]: ACPI group/action undefined: button/left / LEFT
lut 08 15:55:48 gst-modern15a5m root[56678]: ACPI group/action undefined: button/left / LEFT
lut 08 15:55:49 gst-modern15a5m root[56680]: ACPI group/action undefined: button/up / UP
lut 08 15:55:49 gst-modern15a5m plasmashell[6826]: qml: temp unit: 0
lut 08 15:55:49 gst-modern15a5m root[56682]: ACPI group/action undefined: button/up / UP
lut 08 15:55:50 gst-modern15a5m root[56684]: ACPI group/action undefined: button/down / DOWN
lut 08 15:55:50 gst-modern15a5m root[56689]: ACPI group/action undefined: video/brightnessdown / BRTDN
lut 08 15:55:51 gst-modern15a5m root[56691]: ACPI group/action undefined: button/right / RIGHT
lut 08 15:55:51 gst-modern15a5m root[56693]: ACPI group/action undefined: button/right / RIGHT
lut 08 15:55:51 gst-modern15a5m root[56695]: ACPI group/action undefined: video/brightnessdown / BRTDN
lut 08 15:55:52 gst-modern15a5m root[56700]: ACPI group/action undefined: video/brightnessdown / BRTDN
lut 08 15:55:52 gst-modern15a5m root[56702]: ACPI group/action undefined: video/brightnessdown / BRTDN
lut 08 15:55:52 gst-modern15a5m kernel: ACPI Error: No handler for Region [VRTC] (000000006f2c3d34) [SystemCMOS] (20210730/evregion-130)
lut 08 15:55:52 gst-modern15a5m kernel: ACPI Error: Region SystemCMOS (ID=5) has no handler (20210730/exfldio-261)
lut 08 15:55:52 gst-modern15a5m kernel: ACPI Error: Aborting method \_SB.PCI0.SBRG.EC._Q9A due to previous error (AE_NOT_EXIST) (20210730/psparse-529)
lut 08 15:55:52 gst-modern15a5m plasmashell[6826]: qml: temp unit: 0
lut 08 15:55:52 gst-modern15a5m kernel: ACPI Error: No handler for Region [VRTC] (000000006f2c3d34) [SystemCMOS] (20210730/evregion-130)
lut 08 15:55:52 gst-modern15a5m kernel: ACPI Error: Region SystemCMOS (ID=5) has no handler (20210730/exfldio-261)
lut 08 15:55:52 gst-modern15a5m kernel: ACPI Error: Aborting method \_SB.PCI0.SBRG.EC._Q9A due to previous error (AE_NOT_EXIST) (20210730/psparse-529)
lut 08 15:55:54 gst-modern15a5m kernel: ACPI Error: No handler for Region [VRTC] (000000006f2c3d34) [SystemCMOS] (20210730/evregion-130)
lut 08 15:55:54 gst-modern15a5m kernel: ACPI Error: Region SystemCMOS (ID=5) has no handler (20210730/exfldio-261)
lut 08 15:55:54 gst-modern15a5m kernel: ACPI Error: Aborting method \_SB.PCI0.SBRG.EC._Q9A due to previous error (AE_NOT_EXIST) (20210730/psparse-529)

With my workaround running, this is from the output of journalctl -f, immadiately after i close the lid:

lut 08 15:55:58 gst-modern15a5m systemd-logind[658]: Lid closed.
lut 08 15:55:58 gst-modern15a5m systemd-logind[658]: Suspending...

I have now stopped the acpid service that i manually started previously AND I have stopped my workaround command

There is no / no related output from journalctl -f.

I have started my workaround again, and there is no / no related output from journalctl -f.

Now when i close the lid, with the workaround running, and the acpi disabled/stopped, journalctl -f immadiately produces :

lut 08 16:06:23 gst-modern15a5m systemd-logind[658]: Lid closed.
lut 08 16:06:23 gst-modern15a5m systemd-logind[658]: Suspending...

And the system goes to sleep properly.

I have ommited the output of journalctl -f that happens AFTER “lid closed” because there is a lot of it and things seem to react to the sleep request properly with no errors.

Xorg logs only complain about acpid not running, but the acpid service was disabled by default.

If I missed something let me know, i will happily provide any info that will help solving this.

EDIT:
There are some logs saying “ACPI undefined button LEFT” or something like that. I have determined that acpid service picks up arrow keys from my keyboard, and that is the reason, this does not happen acpid service is not running or when I’m not touching the keyboard. It is in the logs because i was switching between terminals with arrow keys, while writing this.