Linux 5.19s Printk Untuk Membongkar Pesan Ke KThreads Per-Konsol

Fungsi printk() kernel Linux untuk mencetak pesan ke log kernel terus ditingkatkan pada tahun 2022.
Selama beberapa tahun terakhir telah ada upaya untuk meningkatkan printk Linux dengan berbagai penyempurnaan agar lebih kuat dan andal untuk fungsi kernel yang banyak digunakan ini. Buah terbaru dari pekerjaan itu adalah tentang menjalankan konsol dengan kecepatan penuh dalam membuat utas untuk setiap konsol yang terdaftar. Dengan Linux 5.19 materi itu mendarat.
Dikirim untuk Linux 5.19 adalah dukungan untuk offload penulisan pesan printk() pada konsol ke KThreads per-konsol. Petr Mladek dari SUSE menjelaskan:
Offload menulis pesan printk() pada konsol ke kthreads per-konsol.
Ini mencegah soft-lockup ketika sejumlah besar pesan dicetak. Itu diamati, misalnya, selama boot sistem besar dengan banyak periferal seperti disk atau antarmuka jaringan.
Ini mencegah penguncian langsung yang diamati, misalnya, ketika pesan tentang kegagalan alokasi dilaporkan dan CPU menangani konsol alih-alih mengklaim kembali memori. Sulit untuk dipecahkan bahkan dengan pembatasan kecepatan karena perlu memperhitungkan jumlah pesan dan kecepatan semua konsol.
Ini adalah suatu keharusan untuk memiliki untuk waktu nyata. Jika tidak, printk() apa pun dapat merusak jaminan latensi.
Kthreads per-konsol memungkinkan untuk menangani setiap konsol dengan kecepatannya sendiri. Konsol lambat tidak lagi memperlambat konsol yang lebih cepat. Dan printk() tidak lagi memperlambat berbagai jalur kode secara tak terduga.
Ada situasi ketika kthreads tidak tersedia atau tidak dapat diandalkan, misalnya, boot awal, menangguhkan, atau panik. Dalam situasi ini, printk() menggunakan mode lama dan mencoba menangani konsol dengan segera. Lihat pull request ini untuk detail selengkapnya dan hore untuk terus meningkatkan printk() pada tahun 2022.

Itulah berita seputar Linux 5.19s Printk Untuk Membongkar Pesan Ke KThreads Per-Konsol, semoga bermanfaat. Disadur dari Phoronix.com.