TSC_DEADLINE вимкнено через Errata


15

Я надіслав свій комп’ютер виробнику для діагностики та допомоги щодо виходу відеовиходу, який він мав. Вони оновили BIOS. Відтоді я отримую

[Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x20 (or later)

У мене раніше не було встановлено пакетів мікрокоду чи коду, і я не використовував це повідомлення.

Я зв’язався з виробником, і вони відповіли "не пам'ятаю номер вашого квитка, але сумніваємось, що ми оновили BIOS", тому вони не дуже корисні.

Він завантажується і працює, але чи важлива чи корисна TSC_DEADLINE?

Єдине, що я можу знайти про це: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=73b866d89bf7c9a895d5445faad03fa3d56c8af8

Але це, здається, стосується лише VirtualBox, і в будь-якому випадку я вже запускаю ядро ​​4.14, тож я б подумав, якби ця комісія збиралася виправити мою проблему, яку вона вже мала.

ryan@pocketwee:~$ uname -a
Linux pocketwee 4.14.0-1-amd64 #1 SMP Debian 4.14.2-1 (2017-11-30) x86_64 GNU/Linux

Більшість дистрибутивів Linux пропонує пакет, linux-firmwareякий забезпечує необхідні оновлення програмного забезпечення. У Debian вам може знадобитися включити contribта / або non-freeотримати його. Патч, який ви пов’язали, покликаний вирішити нерозумну ситуацію, коли ядро ​​відповідає застарілому вбудованому програмному забезпеченню під час завантаження у віртуальній машині, яка, очевидно, не має жодної прошивки ...
AlexP

2
@AlexP linux-firmwareне буде оновлювати мікрокод, потрібен вам intel-microcodeабо amd64-microcodeдля цього (принаймні, на Debian і похідних).
Стівен Кітт

Відповіді:


17

Раптова поява цього повідомлення досить дивна; це говорить про те, що ваша оновлена ​​мікропрограмна програма більше не оновлює мікрокод вашого процесора, тоді як попередня прошивка, яку ви мали, зробила. Weird ... (Інший можливий сценарій є те , що ваш процесор з самого початку не підтримує TSC термін на всіх , і ваша прошивка тепер оновлює свою мікрокод до версії , яка декларує підтримку TSC терміну, але має помилок рендеринга це марно.)

У будь-якому випадку, підтримка терміну підтримки TSC приємно мати, але не є життєво важливою. Ядро має чітку основу для обліку часу та обробки подій; Кінцевий термін TSC - це одна можлива реалізація обробки подій, але не єдина. На процесорах, які його підтримують, приємно мати, оскільки це дуже ефективно.

Щоб оновити мікрокод і, сподіваємось, знову включити підтримку терміну TSC, ви можете встановити пакети оновлення мікрокоду з Debian contribі non-freeсховищ. Для цього відредагуйте, /etc/apt/sources.listщоб переконатися, що визначення репозиторію Debian включають main, contribі non-free; потім біжи

sudo apt update

слідом за ним

sudo apt install intel-microcode

(для процесорів Intel) або

sudo apt install amd64-microcode

(для процесорів AMD). Після цього перезавантажте і ваш мікрокод слід оновити. Якщо підтримка терміну підтримки TSC буде знову ввімкнено, ви не побачите повідомлення про помилку під час завантаження, і ви побачите tsc_deadline_timerу flagsрядках /proc/cpuinfo.

У вікі Debian є додаткова інформація про оновлення мікрокодів .


Дякую за виправлення, Стівен. Я щойно оновив свій ноутбук від debian stretch до buster і натрапив на те саме повідомлення про помилку терміну TSC під час завантаження. Виправлення працює як шарм!
Цянь Сюй
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.