Baru-baru ini ada cukup banyak pekerjaan yang dilakukan untuk membersihkan pemuatan mikrokode CPU Intel/AMD x86 di Linux yang kini telah digabungkan untuk Linux 6.7.
Karena pemuatan mikrokode CPU pada waktu booting terus menjadi hal yang sangat penting demi memitigasi aliran kerentanan keamanan CPU baru yang berkelanjutan serta mengatasi masalah fungsionalitas pada saat tertentu, Thomas Gleixner baru-baru ini mengambil tindakan untuk membersihkan fungsionalitas pemuatan mikrokode CPU x86 dan membuat berbagai perbaikan di sepanjang jalan.
Beberapa peningkatan pemuatan mikrokode x86 di Linux 6.7 termasuk tidak memuat mikrokode pada 32-bit sebelum paging diaktifkan untuk menghindari berbagai masalah, pengerjaan ulang mikrokode CPU yang terlambat memuat, mikrokode yang memuat terlambat sekarang aman untuk hotplug CPU, dan gagasan tentang revisi mikrokode minimum untuk menentukan kapan pemuatan mikrokode yang terlambat dianggap aman.
Sorotan x86/mikrokode diringkas sebagai:
– Susun ulang kode yang diperlukan dan tambahkan pemetaan initrd sementara pada 32-bit sehingga pemuat dapat mengakses gumpalan mikrokode. Hal ini sendiri merupakan persiapan untuk perbaikan besar berikutnya:
– Jangan memuat mikrokode pada 32-bit sebelum paging diaktifkan. Penanganan hal ini telah menyebabkan banyak sekali masalah, masalah, kode buruk, dan peretasan yang tidak perlu di masa lalu. Dan sebenarnya tidak ada alasan yang masuk akal untuk melakukan hal itu. Jadi alihkan pemuatan 32-bit terjadi setelah paging diaktifkan dan putar kembali kode pemuat “real purrty”
– Jatuhkan pemuatan mikrokode campuran pada Intel – di sana, satu patch yang dimuat di seluruh sistem sudah cukup
– Mengolah ulang pemuatan yang terlambat untuk melacak CPU mana yang berhasil memperbarui mikrokode dan mana yang belum, bertindak sesuai dengan itu
– Pindahkan pemuatan mikrokode yang terlambat pada Intel dalam konteks NMI untuk menjamin pemuatan bersamaan di semua thread
– Jadikan pemuatan CPU-hotplug-aman yang terlambat dan aktifkan thread yang offline untuk tujuan pembaruan
– Tambahkan dukungan untuk revisi minimum yang menentukan apakah pemuatan mikrokode yang terlambat aman pada mesin dan mikrokode tidak mengubah fitur perangkat lunak yang terlihat yang tidak dapat digunakan mesin karena deteksi fitur telah terjadi. Secara kasar, revisi minimum adalah jumlah revisi terkecil yang harus dimuat saat ini pada sistem agar pembaruan yang terlambat dapat diperbolehkan
– Pembersihan bagus lainnya, perbaikan, dll di semua tempat. Peningkatan ini digabungkan untuk Linux 6.7.
Itulah berita seputar Linux 6.7 Merombak Pemuatan Mikrokode CPU x86, semoga bermanfaat. Disadur dari Phoronix.com.