GKI 1.0: การทดสอบความเข้ากันได้ GKI 1.0: การทดสอบความเข้ากันได้

หน้านี้อธิบายวิธีการรับอิมเมจสำหรับบูตด้วยการสร้างเคอร์เนลสำหรับการทดสอบความเข้ากันได้

รับอิมเมจสำหรับบูต

ใน AOSP คุณสามารถรับอิมเมจสำหรับบูตที่สร้างไว้ล่วงหน้าได้จาก ci.android.com อิมเมจสำหรับบูตอยู่ภายในไฟล์เก็บถาวร aosp_arm64-img-*.zip ในเป้าหมายบิลด์ aosp_arm64 ดังต่อไปนี้:

อิมเมจสำหรับบูตทั้งที่ลงนามและไม่ได้ลงนามมาในตัวเลือกการบีบอัดเคอร์เนลต่อไปนี้:

  • boot-5.4.img เป็นเคอร์เนลที่ไม่มีการบีบอัด
  • boot-5.4-gz เป็นเคอร์เนลที่บีบอัด gzip
  • boot-5.4-lz4 เป็นเคอร์เนลที่ถูกบีบอัด lz4

เพื่อวัตถุประสงค์ในการพัฒนา คุณสามารถใช้เคอร์เนลที่สร้างไว้ล่วงหน้าและอิมเมจสำหรับบูต GKI ที่ส่งออกสัญลักษณ์ทั้งหมดในเคอร์เนล (สัญลักษณ์ไม่ได้ untrimmed ) การสร้างเคอร์เนลล่วงหน้าที่ยังไม่ได้ตัดแต่งจะถูกสร้างขึ้นในเป้าหมาย kernel_debug_aarch64 สำหรับเคอร์เนลบิวด์เฉพาะบน ci.android.com อิมเมจสำหรับบูต GKI ที่ไม่ได้ตัดแต่งจะถูกสร้างขึ้นในบิลด์ userdebug ควบคู่ไปกับอิมเมจสำหรับบูต GKI ที่ถูกตัดแต่งตามปกติ และมีชื่อไฟล์ที่ลงท้ายด้วย -allsyms.img

รับสิ่งประดิษฐ์การสร้างเคอร์เนล

เมื่อแก้ไขข้อบกพร่องในไฟล์ GKI boot.img การมี build artifact ที่เชื่อมโยงกับเคอร์เนลในไฟล์นั้นก็มีประโยชน์เช่นกัน ตัวอย่างเช่น คุณสามารถใช้ vmlinux ที่ยังไม่ได้ถอดออกเพื่อแก้ไขข้อบกพร่อง และใช้ไฟล์ Manifest สำหรับสร้างบิลด์เคอร์เนล GKI ในเครื่องได้ ในการรับสิ่งประดิษฐ์บิวด์:

  1. ค้นหาหมายเลขบิลด์สำหรับเคอร์เนลที่สร้างไว้ล่วงหน้าซึ่งใช้ในการสร้าง GKI boot.img หมายเลขบิลด์จะปรากฏที่ส่วนท้ายของเวอร์ชันเคอร์เนล นำหน้าด้วยตัวอักษร ab ตัวอย่างต่อไปนี้แสดงหมายเลขบิลด์เป็นตัวหนา:

    [ 0.000000] Linux version 5.4.49-00947-g9d21bcd4897b-ab 6638796

    คุณยังสามารถกำหนดหมายเลขบิลด์ของเคอร์เนลได้โดยใช้ grep เพื่อค้นหาอิมเมจสำหรับบูตที่มีเคอร์เนลที่ไม่มีการบีบอัด:

    grep -a "Linux version " boot-5.4.img
    
  2. เปิดบิลด์ที่สร้างไว้ล่วงหน้าของเคอร์เนลโดยใช้หมายเลขบิลด์ใน URL ต่อไปนี้: https://ci.android.com/builds/submitted/ <number> /kernel_aarch64/latest

    ตัวอย่างเช่น การใช้หมายเลขบิลด์จากขั้นตอนที่ 1 URL จะเป็นดังนี้: https://ci.android.com/builds/submitted/ 6638796 /kernel_aarch64/latest

    เมื่อใช้บิลด์ที่ไม่มีการตัดแต่ง ให้แทนที่ kernel_aarch64 ในลิงก์ด้วย kernel_debug_aarch64