답변:
이러한 정지는 프로세서가 커널이 지원하지 않는 저전력 상태 (c- 상태)로 들어 가려고 할 때 발생합니다. 이 문제는
commit 8fb55197e64d5988ec57b54e973daeea72c3f2ff
Date: Tue Apr 7 16:20:28 2015 +0100
drm/i915: Aggressive downclocking on Baytrail
이것은 커널 4.2에서 상류로 진행되었으며 그 이후로 문제가 발생했습니다. heynnema의 답변 (및 정보를 수집하려고 한이 게시물)에서 설명한 것처럼 간단하고 효과적인 해결 방법이 있으며 저전력 상태를 비활성화하는 부팅 매개 변수를 전달합니다.
현재 사용 가능한 베타 버전 17.04는 4.9 (업스트림 4.9.6을 기반으로 함)를 사용하며 릴리스가 4 월에 나올 때까지 4.10을 사용할 것이라고 믿습니다 . 이 커널에는 여전히 문제가 있으므로 지금은 수정되지 않았다고 결론을 내 렸습니다 . 우분투 커널 변경 로그를 확인했지만 아무것도 발견하지 못했지만 잘못하면 정정하십시오.
나는 오랫동안 kernel.org 에서 c-state 버그를 추적 해 왔습니다 . 2017 년 1 월 Mika Kuoppala는 이 패치 를 스레드에 추가 했습니다 . 분명히 문제를 일으킨 이전 커밋을 되돌립니다. 패치는
drm/i915/byt: Avoid tweaking evaluation thresholds
테스트 결과 1 월 25 일 i915 드라이버 소유자에게 제출 된이 패치의 결과는 매우 양호합니다. 4.11 창에서 합쳐질 수 있습니다. 4.11 커널은 4 월 말경에 출시 될 예정입니다. 이 패치의 버전은 4.11 창에서 병합되었으며 보고서는 버그가 4.11에서 수정되었음을 나타냅니다.
번거로운 BayTrail 프로세서는 각각의 커널마다 약간 다르게 동작합니다. 16.04 (4.4 커널)에서 intel_idle 매개 변수가없는 Atom Z3735F의 가동 시간은 약 15 분 전이었습니다. 라이브 모드에서 베타 17.04 ISO를 테스트했는데 90 분 동안 정지되지 않았으므로이 커널에 운이 좋은 것 같습니다. 시스템에서 이미지를 테스트하기 위해 동일한 작업을 수행 할 수 있습니다. 부팅 가능한 USB를 만들고 "설치하지 않고 Ubuntu를 시도"하고 가능한 한 오랫동안 테스트하십시오.
17.04가 나왔을 때 나는 그것을 설치했고, 처음 2 주 동안 intel_idle
매개 변수 없이 그것을 실행했을 때 3 개의 c-state 정지가 있었기 때문에 이전 버전에서 크게 개선되었습니다.
가장 안전한 방법은 boot 매개 변수를 사용하는 것입니다. 내 연구에 따르면 버그는 17.10 (및 올해 하반기 다른 배포판)에서 수정되어 커널> = 4.11이지만 17.04 에서는 사용 되지 않을 것으로 예상됩니다 .
그러나 우분투 커널 팀이 항상 패치 할 가능성이 있습니다. 불안정한 시스템의 실행을 가끔 허용한다면, 정기적 인 업데이트 ( sudo apt update && sudo apt full-upgrade
) 를 실행 하고 새로운 커널이 도착했을 때 부팅 매개 변수없이 테스트 하여 진행 상황을 감시 할 수 있습니다 . 새 패키지가 설치 되거나 불안정성을 견딜 수있는 경우 메인 라인 커널을 설치할 때 변경 로그를 읽을 수도 있습니다 .
i915
하므로 동일한 패치로 수정 될 가능성이 있지만 버그 보고서는 intel_idle 매개 변수로 수정 된 문제에 관한 것이며, 작동하지 않으면 다른 버그입니다. 커널 사람들. 자세한 내용을 알 수있는 버그 보고서 또는 포럼 스레드 (다른 사람이 문제를 공유한다고 말)를 제공하여 다음에 수행 할 작업을 알려줄 수 있습니까? (새로운 질문이 필요할 수도 있습니다)
intel_idle.max_cstate = 1 설정 방법 에서 이에 대한 수정 사항이 있습니다.
에 다음 terminal
을 입력하십시오.
gksudo gedit /etc/default/grub
이 줄을 변경하십시오 :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
이것을 포함하기 위해 :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=1"
그런 다음 수행하십시오.
sudo update-grub
reboot
이것은 우분투 문제가 아니라 인텔 문제이지만 문제가 해결되었음을 감사드립니다.
Ubuntu 17.04에이 수정이 필요한지 여부는 아무도 모릅니다.
버그 보고서의 주석 # 1013에 따르면 이제 수정되었습니다.
이 스레드를 오랫동안 확인하지는 않았지만 누군가에게 유용 할 경우를 대비하여 결과를 게시해야한다고 생각했습니다.
내가 설정하지 않았을 때 충돌없이 3 천만 이상 작동하지 않은 Intel N2807로 구동되는 저가형 컴퓨터는 이제 max_cstates = 1이 기본 커널 5.3.1 또는 4.19.75에서 완벽하게 작동합니다. 문제없이 각 버전으로 며칠 동안 실행했습니다. 평균 전력 소비량도 10 % 약간 감소했습니다.
2015 년 12 월 8 일에보고 된이 버그를 수정하는 데 약 4 년이 걸렸습니다.