Отключить прерывания GPE ACPI при загрузке?

$ echo 1232323 | awk '{printf(fmt,$1)}' fmt="%'6.3f\n"
12,32,323.000
6
10.11.2015, 02:41
4 ответа

В Linux 4.19 я обнаружил, что отключение GPE(echo "disable" > /sys/firmware/acpi/interrupts/gpe17)больше не решает эту проблему. Даже с отключенным GPE число продолжало увеличиваться, а ЦП оставался занятым. Кажется, новое решение с тех пор, как Linux 4.10 маскирует, а не отключает:

# echo mask > /sys/firmware/acpi/interrupts/gpe17

Или используйте параметр загрузкиacpi_mask_gpe=0x17(в Debian/Ubuntu, добавьте его в /etc/default/grubстроку GRUB_CMDLINE_LINUX_DEFAULT, затем запустите update-grubи перезагрузите ).

Для получения дополнительной информации см. Фиксация ядра Linux 9c4aa1ee , которая впервые была объединена в Linux 4.10 -rc3, и связанные с ней отчеты об ошибках.

2
27.01.2020, 20:24

У меня проблема была с gpe03https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1861419проблема перестала добавлять в /etc/crontab строчку :@reboot root echo "отключить" > /sys/firmware/acpi/interrupts/gpe03

-1
02.02.2020, 08:07

Эта проблема присутствует почти во всех дистрибутивах Linux. Даже в Ubuntu 18.04 и 20.04 LTS (, похоже, связано с неисправным оборудованием или драйверами ). Вы можете использовать этот bash-скрипт и запрограммировать его в crontab. Закройте любые 4 -цифры GPE

#!/bin/bash
kworker=$(pwd)/gpelist.txt
echo "Check GPE..."
# Generates GPE list
grep enabled /sys/firmware/acpi/interrupts/* > $kworker
# Save in the variable $gpe the full address of the erroneous gpe
gpe=$(cat $kworker | egrep '[1-9][0-9][0-9][0-9]+ ' | sort -rnk 2 | head -n1 | cut -d":" -f1)
rm $kworker
if [ ! "$gpe" ]; then
   echo "No Kworker to Disable"
   echo Done
else
   echo "Send deactivation signal"
   echo "disable" > $gpe
   echo Done
fi

Источник:Кворкер

0
02.04.2020, 14:23

В Linux Lite 5.2, MacBook Pro 9.2, Bios 233.0.0.0 (10.06.2020 )у меня были проблемы с прерываниями gpe17 и sci.

Решение от Peter Nowee, приведенное выше, сработало!

Я замаскировал его с помощью systemctl:

  1. создать файл /etc/systemd/system/mask -gpe17.service
  2. скопируйте в него следующие строки и сохраните файл:
[Unit]
Description=Mask GPE 17

[Service]
ExecStart=/usr/bin/bash -c 'echo "mask" > /sys/firmware/acpi/interrupts/gpe17'

[Install]
WantedBy=multi-user.target
  1. создать файл /etc/systemd/system/mask -sci.service
  2. скопируйте в него следующие строки и сохраните файл:
[Unit]
Description=Mask SCI

[Service]
ExecStart=/usr/bin/bash -c 'echo "mask" > /sys/firmware/acpi/interrupts/sci'

[Install]
WantedBy=multi-user.target
  1. затем включите услуги в терминале:
sudo systemctl enable mask-gpe17.service

sudo systemctl enable mask-sci.service
0
31.10.2020, 14:28

Теги

Похожие вопросы