Saat ini Linus Torvalds kebanyakan berurusan dengan menggiring kode baru ke dalam kernel Linux dan menjadi penjaga gerbang daripada secara aktif mengembangkan sendiri kode kernel baru, untuk Linux 6.4 yang sedang dikembangkan dia mendapati dirinya melakukan sedikit pengkodean.
Seperti yang dicatat minggu lalu, dia secara pribadi membersihkan kode salinan memori x86 untuk Linux 6.4. Minggu ini dia menggabungkan lebih banyak kodenya sendiri karena dia mengambil masalah dengan beberapa kode yang digabungkan oleh para insinyur Intel sebagai bagian dari pengaktifan Linear Address Masking mereka.
Kembali selama Linux 6.2 hari pada akhir tahun lalu, Linus menolak kode Intel LAM pada saat itu karena berbagai masalah teknis. Intel kemudian mengerjakan ulang untuk Linux 6.4.
Kali ini Linus menggabungkan Intel LAM ke Linux 6.4 sebagai fitur CPU baru ini untuk membiarkan ruang pengguna menyimpan metadata dalam beberapa bit pointer tanpa menutupinya sebelum digunakan. Intel LAM - seperti Arm TBI - dapat digunakan untuk mesin virtual, pembuatan profil/pembersih/penandaan, dan aplikasi lainnya. Tapi kali ini ada beberapa kode yang kurang ideal yang secara pribadi dia ambil untuk dirapikan.
Linus menulis dalam penggabungan baru pada hari Jumat:
Gabungkan cabang pembaruan uaccess x86 saya.
Pembaruan LAM ("Linear Address Masking") dalam rilis ini membuat saya tidak senang tentang bagaimana "access_ok()" dilakukan, dan ternyata ada beberapa bug kecil di dalamnya juga. Ini adalah pembersihan kode saya:
- gunakan bit tanda penunjuk __user daripada menutupi alamat dan memeriksanya dengan rentang TASK_SIZE.
Kita sudah melakukan bagian ini untuk sisi get/put_user() , tetapi `access_ok()` melakukan hal naif "mask and range check", yang tidak hanya menghasilkan kode jahat, tetapi juga berakhir dengan arti bahwa __access_ok sendiri tidak melakukannya pekerjaan bagus, jadi copy_from_user_nmi() tidak mendapatkan cek dengan benar.
- pindahkan semua kode yang hanya 64-bit ke file header versi 64-bit, sehingga kami tidak mencemari kode x86 yang dibagikan secara tidak perlu dan membuatnya terlihat seperti LAM dapat bekerja di 32-bit juga.
- perbaiki bug di penyembunyian alamat (itu tidak menjadi masalah: dalam hal ini perbaikannya adalah menghapus kode buggy seluruhnya).
- beberapa pembersihan sepele dan menambahkan komentar tentang aturan access_ok(). Jadi Intel LAM tetap siap menggunakan Linux 6.4 dan Torvalds mengerjakan ulang sekitar seratus baris kode untuk membersihkannya.
Sekarang untuk ruang pengguna Linux bersiap untuk menggunakan Intel LAM.
Itulah berita seputar Linus Torvalds Membersihkan Kode Intel LAM Di Linux 6.4, semoga bermanfaat. Disadur dari Phoronix.com.Artikel Diperbarui pada: May 06, 2023
Kontributor: Syauqi Wiryahasana
Model: Haifa Manik Intani