CUPS – Masalah yang Diketahui
Jadwal Pembaruan
Kernel Linux Fedora mengikuti rilis kernel hulu. Untuk melihat versi terbaru di Fedora, periksa aplikasi paket.
Rilis Stabil
Rilis stabil Fedora menerima dua jenis pembaruan kernel.
Pembaruan kernel stabil
Komunitas kernel hulu mendukung versi utama terbaru dengan pembaruan stabil (rilis 6.y.z). Pembaruan ini dirilis sekitar sekali seminggu, meskipun frekuensinya dapat bervariasi. Setelah komunitas kernel hulu merilis pembaruan stabil, Fedora membangunnya dan mengirimkannya sebagai pembaruan ke Bodhi. Pembaruan ini biasanya ditinggalkan di Bodhi untuk pengujian selama beberapa hari sebelum dikirimkan ke repositori pembaruan stabil.
Pembaruan kernel mayor
Kernel Linux merilis versi mayor baru (rilis 6.y) setiap beberapa bulan. Ketika hal ini terjadi, Fedora memperbarui ke versi mayor baru setelah beberapa rilis stabil hulu. Ketika pembaruan dikirimkan ke Bodhi, lebih banyak waktu diberikan untuk pengujian daripada pembaruan stabil untuk memastikan tidak ada regresi serius.
Rilis Pengembangan
Versi pengembangan Fedora meliputi Rawhide dan rilis Branched.
Rawhide
Kernel Rawhide adalah snapshot Git terbaru dari pohon kernel hulu Linus di pohon kernel.org. Secara berkala (seringkali setiap hari), snapshot baru dibangun.
Branched
Branched releases menerima pembaruan dengan interval yang lebih jarang dibandingkan Rawhide. Pada awal rilis Branched, biasanya menggunakan versi pra-rilis kernel, sehingga setiap Release Candidate (RC) dibangun untuk rilis Branched. Setelah kernel dirilis, rilis Branched menerima pembaruan stabil seperti rilis stabil Fedora.
Debug Kernel
Kernel Linux menawarkan sejumlah opsi konfigurasi untuk memudahkan debugging masalah. Namun, beberapa opsi ini memiliki biaya kinerja sehingga Fedora tidak selalu mengaktifkan opsi-opsi tersebut. Ketika opsi debugging telah dinonaktifkan dalam paket kernel, paket kernel-debug terpisah diproduksi dengan opsi-opsi tersebut diaktifkan.
Rawhide
Kernel Rawhide mengaktifkan opsi debugging. Namun, setiap kernel kandidat rilis dibangun dengan opsi debugging dinonaktifkan. Kernel kandidat rilis dapat dikenali dari bidang rilisnya. Sebagai contoh, kernel-5.19.0-0.rc7.20220722git68e77ffbfd06.56.fc37 adalah kernel kandidat rilis untuk Fedora 37.
Kebijakan
Driver di luar pohon
Metode termudah sejauh ini adalah dengan menggabungkan kode pengemudi ke dalam kernel Linus. Fedora secara terus-menerus melakukan rebase ke rilis hulu yang lebih baru, sehingga secara otomatis mewarisi perubahan-perubahan ini tanpa beban tambahan bagi pengelola kernel Fedora.
Menambahkan driver eksternal ke kernel Fedora yang tidak diterima oleh hulu memerlukan upaya berkelanjutan dari tim kernel Fedora, jadi sejauh mungkin, kami berusaha untuk menghindari hal tersebut. Dalam beberapa situasi di mana hal itu masuk akal untuk dilakukan, terdapat beberapa kriteria yang harus dipenuhi.
-
Harus ada permintaan yang wajar untuk fitur tersebut agar kami bersedia menanggung beban mengelola kode tersebut hingga mencapai hulu.
-
Lulus pemeriksaan dasar (telah direview oleh setidaknya satu pengelola kernel Fedora).
-
Seorang pengembang hulu sedang aktif berusaha untuk menggabungkan kode mereka ke dalam pohon kode Linus.
-
Ada seorang pengembang Fedora yang bertanggung jawab untuk menjaga agar Fedora tetap diperbarui.
-
Tidak menimbulkan beban tambahan yang signifikan bagi pengelola kernel Fedora. Kode yang harus terus-menerus diperbaiki cenderung akhirnya dihapus.
-
Tidak menambahkan panggilan sistem baru atau karakteristik ABI serupa. Hal ini dilakukan untuk menghindari situasi di mana kita bisa berakhir dengan ketidakcocokan antara distribusi/hulu.
-
Cara ekspor simbol harus disetujui terlebih dahulu di hulu. Hal ini meliputi:
-
Menambahkan simbol ekspor (EXPORT_SYMBOL) untuk mengekspor sesuatu yang sebelumnya tidak diekspor
-
Mengubah EXPORT_SYMBOL_GPL menjadi EXPORT_SYMBOL
-
Mengubah EXPORT_SYMBOL menjadi EXPORT_SYMBOL_GPL
-
-
Dalam kasus langka di mana kami menambahkan ekspor yang bukan dari hulu, kami lebih berhati-hati dan menggunakan EXPORT_SYMBOL_GPL untuk mengekspornya. Hal ini dilakukan sebagian sebagai pencegahan agar modul pihak ketiga tidak menggunakannya. (Karena mereka mungkin akan dihapus di masa depan). Satu-satunya pengecualian dari semua hal di atas adalah pada kode hulu baru yang belum digabungkan yang sedang ditambahkan. Simbol-simbol baru dapat diekspor sesuai dengan niat penulisnya.
Staging
Driver-driver yang terdapat di direktori staging kernel Linux diketahui berada dalam kondisi kasar dan belum lengkap. Untuk sebagian besar driver tersebut, tim kernel menganggap tidak aman untuk membangun dan mendistribusikannya. Kami tidak memiliki keyakinan terhadap kode yang ada, dan kami juga tidak memiliki waktu untuk mendebug masalah pada driver-driver yang diketahui bermasalah.
Seperti halnya setiap kebijakan, ada pengecualian. Fedora saat ini menyediakan beberapa driver staging untuk berbagai perangkat keras. Untuk tim kernel Fedora mengaktifkan driver staging, syarat-syarat berikut harus dipenuhi:
-
Harus ada tinjauan dan perbaikan kode yang substansial pada tahap awal. Ini berarti perbaikan yang sebenarnya, bukan hanya perubahan gaya.
-
Harus ada kontributor yang bersedia ditugaskan untuk menangani laporan bug dan berurusan dengan hulu.
-
Kontributor harus secara aktif terlibat dalam meningkatkan driver hulu.
-
Pengemudi tidak boleh menimbulkan beban yang berlebihan bagi tim kernel. Artinya, jika sejumlah besar laporan bug berasal dari pengemudi, maka perbaikan tidak dilakukan secara cukup cepat di hulu.
-
Harus dipahami bahwa jika salah satu dari kondisi ini tidak terpenuhi, atau pada akhirnya tidak terpenuhi, pengemudi akan dinonaktifkan.
Fitur Bawaan
Sesekali, pengembang kernel Fedora diminta untuk mengintegrasikan suatu fitur ke dalam kernel. Artinya, fungsionalitas tersebut disertakan dalam berkas vmlinux yang dijalankan oleh setiap mesin Fedora, alih-alih dibangun sebagai modul yang hanya dimuat jika diperlukan. Mengingat modul tersebut dimuat di setiap mesin, kami cenderung membangun fungsionalitas sebagai modul sebanyak mungkin. Meskipun satu orang mungkin membutuhkan driver untuk kartu ATI, orang lain tidak membutuhkannya, dan memasukkan fungsionalitas tersebut ke dalam kernel adalah pemborosan yang tidak perlu.
Tidak ada kriteria tetap yang secara tepat menentukan apakah suatu fitur merupakan fitur bawaan atau tidak, tetapi umumnya mengikuti pedoman berikut:
-
Opsi ini tidak dapat dibuat sebagai modul dan banyak digunakan
-
Opsi ini bukanlah driver/sistem berkas dan digunakan oleh sesuatu yang merupakan default Fedora
-
Opsi ini berfungsi sebagai driver dan digunakan oleh berbagai jenis perangkat (driver keyboard/mouse, dukungan VT)
-
Opsi ini adalah sistem berkas dan digunakan oleh semua mesin atau merupakan sistem berkas default Fedora (tmpfs, ext4).
Sekali lagi, panduan di atas bersifat umum, namun pada umumnya kami berusaha membatasi ukuran keseluruhan vmlinux yang dimuat agar hanya mencakup fungsi inti yang diperlukan.
Jika Anda menemukan bahwa opsi konfigurasi Fedora tidak cukup untuk kebutuhan Anda, Anda dapat membangun ulang kernel dan mengubah opsi sesuai keinginan Anda. Lihat dokumentasi pada membangun kernel kustom.
Berpartisipasi
Jika Anda tertarik untuk berkontribusi dalam pengembangan dan pemeliharaan kernel Fedora, kunjungi wiki kernel untuk informasi lebih lanjut.
Milis
Milis kernel Fedora hanya diperuntukkan untuk topik-topik yang berkaitan dengan kernel Fedora. Hal ini mencakup pengemasan khusus Fedora dan pengaturan konfigurasi kernel. Untuk diskusi tentang Linux itu sendiri, silakan kunjungi milis Kernelnewbies atau milis Linux Kernel.
Anda dapat berlangganan ke milis kernel Fedora dan melihat arsipnya di Hyperkitty.
IRC
Pengguna yang tertarik dengan kernel Fedora berkumpul di saluran #fedora-kernel di freenode.
Menemukan kesalahan ketik, informasi yang hilang atau sudah tidak berlaku, atau hal lain yang dapat diperbaiki? Edit dokumen ini di https://pagure.io/fedora-docs/quick-docs.
Want to help? Learn how to contribute to Fedora Docs ›