Esta página descreve como conseguir imagens de inicialização com artefatos de build do kernel para testes de compatibilidade.
Acessar imagens de inicialização
No AOSP, é possível acessar imagens de inicialização pré-criadas em
ci.android.com.
As imagens de inicialização estão contidas no arquivo aosp_arm64-img-*.zip
no
destino de build aosp_arm64
, conforme mostrado abaixo:
android11-5.4
daandroid11-gsi
ramificação.android12-5.4
daandroid12-gsi
ramificação.
As imagens de inicialização assinadas e não assinadas têm as seguintes opções de compactação do kernel:
boot-5.4.img
é um kernel descompactado.boot-5.4-gz
é um kernel compactado com gzip.boot-5.4-lz4
é um kernel compactado lz4.
Para fins de desenvolvimento, é possível usar pré-builds do kernel e imagens de inicialização
GKI que exportam todos os símbolos no kernel (os símbolos são
untrimmed
). Pré-builds do kernel não aparados são gerados no
destino kernel_debug_aarch64
para um build de kernel específico em
ci.android.com.
As imagens de inicialização GKI não aparadas são geradas em builds de userdebug junto com as imagens de inicialização GKI
normais e têm nomes de arquivos que terminam em -allsyms.img
.
Extrair artefatos de build do kernel
Ao depurar problemas em um arquivo boot.img
do GKI, é útil ter os
artefatos de build associados ao kernel nesse arquivo. Por exemplo, é possível
usar o vmlinux
sem stripping para depuração e o manifesto para reproduzir o
build do kernel da GKI localmente. Para conseguir artefatos de build:
Localize o número de build do kernel pré-criado usado para criar o
boot.img
da GKI. O número de build aparece no final da versão do kernel, precedido pelas letrasab
. O exemplo a seguir mostra o número de build em negrito:[ 0.000000] Linux version 5.4.49-00947-g9d21bcd4897b-ab6638796
Também é possível determinar o número de build do kernel usando
grep
para encontrar uma imagem de inicialização que contenha um kernel descompactado:grep -a "Linux version " boot-5.4.img
Abra o build pré-criado do kernel usando o número de build no seguinte URL:
https://ci.android.com/builds/submitted/<number>/kernel_aarch64/latest
Por exemplo, usando o número de build da etapa 1, o URL é o seguinte:
https://ci.android.com/builds/submitted/6638796/kernel_aarch64/latest
Ao usar um build não cortado, substitua
kernel_aarch64
no link porkernel_debug_aarch64
.