TSC_DEADLINE ปิดใช้งานเนื่องจาก Errata


15

ฉันส่งคอมพิวเตอร์ของฉันไปที่ผู้ผลิตเพื่อการวินิจฉัยและช่วยเหลือปัญหาการส่งสัญญาณวิดีโอที่มี พวกเขาอัพเดท BIOS ตั้งแต่นั้นมาฉันก็ได้

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

ฉันไม่ได้ติดตั้งไมโครโค้ดหรือแพ็คเกจucodeใด ๆมาก่อนและฉันไม่เคยได้รับข้อความนี้

ฉันได้ติดต่อผู้ผลิตแล้วและพวกเขาตอบว่า "จำหมายเลขตั๋วของคุณไม่ได้ แต่สงสัยว่าเราอัปเดตไบออส" ดังนั้นพวกเขาจึงไม่ได้มีประโยชน์มาก

มันเริ่มระบบและทำงานได้ แต่ 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-firmwareที่ให้การอัพเดตเฟิร์มแวร์ที่จำเป็น ใน Debian คุณอาจต้องเปิดใช้งานcontribและ / หรือnon-freeรับมัน แพทช์ที่คุณเชื่อมโยงมีวัตถุประสงค์เพื่อแก้ไขสถานการณ์ที่เซ่อร์เมื่อเคอร์เนลเป็นไปตามเฟิร์มแวร์ที่ล้าสมัยเมื่อทำการบูตในเครื่องเสมือนซึ่งเห็นได้ชัดว่าไม่มีเฟิร์มแวร์ใด ๆ ...
AlexP

2
@AlexP linux-firmwareจะไม่อัปเดตไมโครโค้ดคุณต้องการintel-microcodeหรือamd64-microcodeเพื่อ (อย่างน้อยใน Debian และอนุพันธ์)
Stephen Kitt

คำตอบ:


17

ข้อความที่ปรากฏอย่างกะทันหันนี้ค่อนข้างแปลก มันบอกว่าเฟิร์มแวร์ที่อัปเดตของคุณไม่ได้อัปเกรดไมโครโค้ดของ CPU อีกต่อไป แปลก ... (อีกสถานการณ์ที่เป็นไปได้คือเดิมซีพียูของคุณไม่สนับสนุนกำหนดเวลา TSC เลยและตอนนี้เฟิร์มแวร์ของคุณกำลังอัปเกรดไมโครโค้ดเป็นรุ่นที่ประกาศสนับสนุนวันครบกำหนดของ TSC แต่มีการแสดงผลที่ผิดเพี้ยนไป

ไม่ว่าในกรณีใดการสนับสนุนกำหนดเวลาของ TSC นั้นดี แต่ก็ไม่สำคัญ เคอร์เนลมีเฟรมเวิร์กที่ซับซ้อนสำหรับการจับเวลาและการจัดการเหตุการณ์ที่กำหนด กำหนดเวลา TSC คือการนำไปใช้ในการจัดการเหตุการณ์ แต่ไม่สามารถทำได้เพียงอย่างเดียว สำหรับซีพียูที่รองรับมันก็ดีที่มีเพราะมันมีประสิทธิภาพมาก

ในการอัปเกรดไมโครโค้ดของคุณและหวังว่าจะเปิดใช้งานการสนับสนุนกำหนดเวลา TSC อีกครั้งคุณสามารถติดตั้งแพ็คเกจการอัปเดตไมโครโค้ดจากเดเบียนcontribและที่non-freeเก็บ ต้องการทำเช่นนั้นการแก้ไขของคุณ/etc/apt/sources.listเพื่อให้มั่นใจว่า Debian คำจำกัดความของพื้นที่เก็บข้อมูลของคุณมีmain, contribและnon-free; จากนั้นเรียกใช้

sudo apt update

ติดตามโดย

sudo apt install intel-microcode

(สำหรับ Intel CPU) หรือ

sudo apt install amd64-microcode

(สำหรับซีพียู AMD) เมื่อเสร็จสิ้นให้รีบูตเครื่องและควรอัปเดตไมโครโค้ดของคุณ หากการสนับสนุนเส้นตายทีเอสซีเป็นอีกครั้งที่เปิดใช้งานคุณจะไม่เห็นข้อผิดพลาดที่บูตและคุณจะเห็นtsc_deadline_timerในสายของflags/proc/cpuinfo

เดวิกิพีเดียมีข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดตเฟิร์มแว


ขอบคุณสำหรับการแก้ไขของคุณสตีเฟ่น ฉันเพิ่งอัพเกรดแล็ปท็อปของฉันจากเดเบียนยืดเป็นบัสเตอร์และเจอข้อความแสดงข้อผิดพลาดกำหนดเวลา TSC เดียวกันในการบูตเครื่อง การแก้ไขของคุณใช้งานได้อย่างมีเสน่ห์!
Qiang Xu
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.