Memproses objek vmlinux.o dengan objtool telah menjadi langkah paling intensif memori dari proses pembuatan kernel Linux. Tambalan sebelumnya telah bekerja untuk mengurangi penggunaan memori objtool ini saat mengkompilasi kernel Linux dan seri tambalan besar yang sekarang ditetapkan untuk Linux 6.5 diatur untuk secara tajam mengurangi penggunaan heap maksimum.
Saat membuat build kernel Linux debug lengkap (allyesconfig) dengan CONFIG_DEBUG_INFO diaktifkan, DWARF membuat hampir 200 juta relokasi. Saat ini build debug kernel Linux yang besar ini dapat menyebabkan penggunaan heap puncak objtool mencapai 53 GB. Namun berkat pengoptimalan ini yang hadir dengan Linux 6.5, penggunaan tumpukan puncak akan turun menjadi sekitar 25GB.
Untuk skenario yang kurang intens, ada juga manfaat dari pengoptimalan objek ini. Build kernel tipe distro dengan Indirect Branch Tracking (IBT) diaktifkan akan melihat penggunaan heap puncak objtool turun dari 4,2 GB menjadi sekitar 2,8 GB.
Selain secara tajam menurunkan penggunaan tumpukan puncak, pengoptimalan objtool ini juga menghasilkan waktu proses yang lebih cepat dan pada gilirannya waktu pembuatan kernel yang lebih singkat.
Ini adalah serangkaian perbaikan objtool yang bagus oleh Josh Poimboeuf. Perubahan ini bersama dengan beberapa perbaikan debugging dan perangkat tambahan unwinder dikirim pagi ini sebagai bagian dari perubahan objtool untuk kernel Linux 6.5.
Itulah berita seputar Membangun Kernel Debug Linux Penuh Dioptimalkan Dari 53GB Hingga 25GB Penggunaan Heap, semoga bermanfaat. Disadur dari Phoronix.com.