GKI 1.0: test di compatibilità

Questa pagina descrive come ottenere immagini di avvio con gli elementi di compilazione del kernel per i test di compatibilità.

Ottenere immagini di avvio

In AOSP, puoi ottenere immagini di avvio precompilate da ci.android.com. Le immagini di avvio sono contenute nell'archivio aosp_arm64-img-*.zip nel aosp_arm64 target di compilazione, come segue:

Le immagini di avvio firmate e non firmate sono disponibili nelle seguenti opzioni di compressione del kernel:

  • boot-5.4.img è un kernel non compresso.
  • boot-5.4-gz è un kernel compresso con gzip.
  • boot-5.4-lz4 è un kernel compresso con lz4.

Per scopi di sviluppo, puoi utilizzare precompilazioni del kernel e immagini di avvio GKI che esportano tutti i simboli nel kernel (i simboli sono untrimmed). Le precompilazioni del kernel non tagliate vengono generate nel target kernel_debug_aarch64 per una determinata build del kernel su ci.android.com. Le immagini di avvio GKI non tagliate vengono generate nelle build userdebug insieme alle normali immagini di avvio GKI tagliate e hanno nomi file che terminano con -allsyms.img.

Ottenere gli artefatti della build del kernel

Quando esegui il debug dei problemi in un file GKI boot.img, è utile avere anche gli elementi di compilazione associati al kernel in quel file. Ad esempio, puoi utilizzare il file vmlinux non stripped per il debug e il manifest per riprodurre la compilazione del kernel GKI localmente. Per ottenere gli elementi della build:

  1. Individua il numero di build del kernel precompilato utilizzato per creare il GKI boot.img. Il numero di build viene visualizzato alla fine della versione del kernel, precededo dalle lettere ab. L'esempio seguente mostra il numero di build in grassetto:

    [ 0.000000] Linux version 5.4.49-00947-g9d21bcd4897b-ab6638796

    Puoi anche determinare il numero di build del kernel utilizzando grep per trovare un'immagine di avvio contenente un kernel non compresso:

    grep -a "Linux version " boot-5.4.img
  2. Apri la build precompilata del kernel utilizzando il numero di build nel seguente URL: https://ci.android.com/builds/submitted/<number>/kernel_aarch64/latest

    Ad esempio, utilizzando il numero di build del passaggio 1, l'URL è il seguente: https://ci.android.com/builds/submitted/6638796/kernel_aarch64/latest

    Quando utilizzi una build non ritagliata, sostituisci kernel_aarch64 nel link con kernel_debug_aarch64.