เคอร์เนล Linux มีกลไกมากมายในการวินิจฉัยปัญหา ซึ่งรวมถึง การติดตาม, BPF และ การสร้างโปรไฟล์ เทคนิคเหล่านี้ส่วนใหญ่พร้อมใช้งานในเคอร์เนลไบนารี Generic Kernel Image (GKI) เมื่อพัฒนาผลิตภัณฑ์ จะมีเครื่องมืออื่นๆ อีกมากมายที่ผสานรวมเข้ากับกระบวนการพัฒนาหรือการผสานรวม ซึ่งบางเครื่องมือต้องใช้ฟีเจอร์เคอร์เนลที่ไม่ได้เป็นส่วนหนึ่งของ GKI เช่นเดียวกับฟีเจอร์ GKI ส่วนใหญ่ เราขอแนะนำให้คุณทำงานร่วมกับผู้ดูแลต้นทางเพื่อเพิ่มฟีเจอร์เหล่านี้ลงใน Linux
ฟีเจอร์การแก้ไขข้อบกพร่องปลายทางในโมดูลของผู้ให้บริการ
ฟีเจอร์การแก้ไขข้อบกพร่องมีขอบเขตคล้ายกับฟีเจอร์ประเภทอื่นๆ และต้อง เป็นไปตามกระบวนการเดียวกันตามที่อธิบายไว้ใน แพตช์เฉพาะของ Android
ฟีเจอร์การแก้ไขข้อบกพร่องปลายทางที่รบกวน
ฟีเจอร์การแก้ไขข้อบกพร่องที่มีประโยชน์บางอย่างต้องใช้ตัวเลือกการกำหนดค่าพิเศษที่ปิดใช้ใน GKI จึงต้องใช้เคอร์เนลบิลด์พิเศษ ฟีเจอร์เหล่านี้อาจปิดใช้เนื่องจากประสิทธิภาพลดลงหรือไม่เหมาะกับการใช้งานจริง แต่จำเป็นอย่างยิ่งสำหรับการแก้ไขข้อบกพร่องของปัญหาบางประเภท ตัวอย่างเครื่องมือดังกล่าว ได้แก่ Sanitizer (KASAN, UBSAN), debugfs รวมถึงฟีเจอร์และเครื่องมืออื่นๆ ที่เฉพาะเจาะจงของพาร์ทเนอร์
คุณต้องเป็นผู้กำหนดวิธีจัดการเคอร์เนลพิเศษที่เปิดใช้การแก้ไขข้อบกพร่องซึ่งส่งผลต่ออินเทอร์เฟซโมดูลเคอร์เนล (KMI) แนวทางปฏิบัติทั่วไปคือการมีเวอร์ชันการแก้ไขข้อบกพร่องภายในและส่งมอบอาร์ติแฟกต์ที่ได้ให้กับลูกค้าภายในหรือพาร์ทเนอร์ด้านการพัฒนาปลายทาง เราขอแนะนำให้แยก ฟีเจอร์ดังกล่าวไว้ในโมดูลต่อไป เนื่องจากระบบจะไม่ยอมรับฟีเจอร์การแก้ไขข้อบกพร่องที่เฉพาะเจาะจงของพาร์ทเนอร์เข้าสู่ เคอร์เนล GKI นอกเหนือจากหลักเกณฑ์ที่อธิบายไว้ใน แพตช์เฉพาะของ Android