Na dzień dzisiejszy (8/2019) ten wątek tak naprawdę nie stwierdza, że ustawienie intel_idle.max_cstate = 1 jest oficjalnym rozwiązaniem błędu opublikowanego w 2011 roku. Ponieważ w moim przypadku jest to (musiałem zduplikować) problem sporadyczny, zanim ja DODAJ intel_idle.max_cstate = 1 do mojego GRUBA, lubię otrzymywać dokumentację, która to potwierdza. Oryginalny dokument Bugzilli jest niejasny. Czy jakiś uczestnik tego forum może mi pomóc oficjalnie zweryfikować tę „poprawkę”?
Jan Hus
Odpowiedzi:
21
Jeśli używasz GRUB:
Za pomocą sudo, edytuj /etc/default/grubi edytuj GRUB_CMDLINE_LINUX_DEFAULTlinię dodając intel_idle.max_cstate=1do wszystkiego, co może już tam być. Po zapisaniu uruchom plik sudo update-grub, a następnie uruchom ponownie. Sugeruje się, aby najpierw zapisać kopię oryginalnego pliku grub.
Aby sprawdzić, czy twój stan nie schodzi głębiej niż 1, użyj turbostatu (pakiet: linux-tools-common).
Przykład (gdzie jest już coś na GRUB_CMDLINE_LINUX_DEFAULT):
Zastanawiam się, jaką wartością w danych wyjściowych turbostatjest pokazanie, że stan nie idzie głębiej niż 1. Co masz na myśli deeper? Co robić inaczej, jeśli idzie głębiej?
Stephane
1
@Stephane: Przez „głębsze” miałem na myśli wyższe stany c niż 1. jeśli poprawnie ustawiłeś wiersz poleceń grub, nie powinno ono przechodzić do cstate głębiej (wyżej niż) 1. Możesz obserwować procesor i pakiet, cstates większe niż 1 pokazuje 0,00% czasu w tych stanach na linii wyjściowej turbostatu.
Doug Smythies,
1
Mój Thinkpad X201i co godzinę bardzo się restartuje. Włączyłem intel_idle.max_cstate=1w grub jak GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=1"z aktualizacją grub sudo update-grubi ponownie uruchomiłem maszynę. Nie występują już żadne twarde restarty. Cieszę się, że rozwiązałem problem. Zastanawiam się, co dokładnie ta właściwość mówi procesorowi.
Nie ma już potrzeby aktualizowania gruba, jeśli przejdziesz na najnowsze jądro.
Zgodnie z komentarzem # 1013 w zgłoszeniu błędu jest teraz naprawiony:
Dawno nie sprawdzałem tego wątku, ale pomyślałem, że powinienem opublikować swoje odkrycia, na wypadek, gdyby były przydatne dla kogokolwiek.
Komputer z niższej półki napędzany procesorem Intel N2807, który nigdy nie działał więcej niż 30 minut bez awarii, gdy nie ustawiłem ... max_cstates = 1 teraz działa doskonale dobrze z podstawowym jądrem wer. 5.3.1 lub 4.19.75. Uruchomiłem go przez kilka dni z każdą wersją bez żadnych problemów. Średnie zużycie energii również spadło o nieco ponad 10%.
Naprawienie błędu zajęło około czterech lat, po raz pierwszy zgłoszono 8 grudnia 2015 r.
Odpowiedzi:
Jeśli używasz GRUB:
Za pomocą
sudo
, edytuj/etc/default/grub
i edytujGRUB_CMDLINE_LINUX_DEFAULT
linię dodającintel_idle.max_cstate=1
do wszystkiego, co może już tam być. Po zapisaniu uruchom pliksudo update-grub
, a następnie uruchom ponownie. Sugeruje się, aby najpierw zapisać kopię oryginalnego pliku grub.Aby sprawdzić, czy twój stan nie schodzi głębiej niż 1, użyj turbostatu (pakiet: linux-tools-common).
Przykład (gdzie jest już coś na
GRUB_CMDLINE_LINUX_DEFAULT
):Przed (edytowane):
Wprowadź zmiany (używając mojej metody do kontroli konfiguracji):
Zmień to:
Do tego:
I aktualizacja:
Teraz sprawdź (edytowano):
Powinieneś również zobaczyć te wiadomości w (
dmesg
ivar/log/kern.log
edytowane):źródło
turbostat
jest pokazanie, że stan nie idzie głębiej niż 1. Co masz na myślideeper
? Co robić inaczej, jeśli idzie głębiej?intel_idle.max_cstate=1
w grub jakGRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=1"
z aktualizacją grubsudo update-grub
i ponownie uruchomiłem maszynę. Nie występują już żadne twarde restarty. Cieszę się, że rozwiązałem problem. Zastanawiam się, co dokładnie ta właściwość mówi procesorowi.Po tych samych problemach z zawieszaniem się w systemie Linux i moim asrocku Q2900 znalazłem na niemieckiej stronie IT rozwiązanie / obejście dostarczone przez firmę Intel. ( https://www.golem.de/news/intel-einfrieren-bei-intels-bay-trail-socs-durch-patch-abgefedert-1609-123546.html ) Istnieje ogólny problem z Bay-Trail-SoCs od Intela. Link do łatki: https://bugzilla.kernel.org/attachment.cgi?id=223851
Dalsze informacje: Ten patch / skrypt uzyskuje tryb oszczędzania energii. Powyższe rozwiązanie tematyczne w ogóle usuwa ten tryb.
źródło
Edytuj / etc / defaults / grub:
Biegać
źródło
Nie ma już potrzeby aktualizowania gruba, jeśli przejdziesz na najnowsze jądro.
Zgodnie z komentarzem # 1013 w zgłoszeniu błędu jest teraz naprawiony:
Naprawienie błędu zajęło około czterech lat, po raz pierwszy zgłoszono 8 grudnia 2015 r.
źródło