Proceso de lanzamiento de imágenes genéricas de kernel (GKI)

En esta página, se describe cómo se lanza el GKI, incluidos los lanzamientos trimestrales y los lanzamientos de emergencia fuera de banda. El objetivo de esta página es brindar a los OEM una guía sobre dónde obtener el GKI y el proceso para realizar correcciones de emergencia fuera de banda. Los OEM también pueden usar Desarrollo de GKI para obtener más información sobre cómo pueden trabajar con el equipo de Android Kernel para optimizar el kernel de GKI para sus productos.

Cadencia de lanzamientos de GKI

El GKI se lanza trimestralmente después de la congelación del KMI.

Mes de lanzamiento a12-5.10 a13-5.10 a13-5.15 a14-5.15 a14-6.1 a15-6.6* a16-6.12* a17-6.18*
Oct
2025
Cierre de check-in
16 de octubre1 de octubre1 de octubre
GKI listo para la carga previa 31 oct.15 de octubre15 de octubre
Dic
2025
Cierre de check-in
1 de dic1 de dic1 de dic1 de dic
GKI listo para la carga previa 15 de dic15 de dic15 de dic15 de dic
Ene
2026
Cierre de check-in
16 de enero2 de enero2 de enero
GKI listo para la carga previa 31 de enero15 de enero15 de enero
Feb
2026
Cierre de check-in
GKI listo para la carga previa
Mar
2026
Cierre de check-in
1 de marzo1 de marzo15 de marzo
GKI listo para la carga previa 15 de marzo15 de marzo31 de marzo
Abr
2026
Cierre de check-in
16 de abril1 de abr1 de abr
GKI listo para la carga previa 30 de abril15 de abril15 de abril
Mayo de
2026
Cierre de check-in
GKI listo para la carga previa
Jun
2026
Cierre de check-in
1 de jun.1 de jun.15 de junio15 de junio
GKI listo para la carga previa 15 de junio15 de junio30 de junio30 de junio
Jul
2026
Cierre de check-in
16 de julio1 de jul1 de jul
GKI listo para la carga previa 31 de julio15 de julio15 de julio
Ago
2026
Cierre de check-in
GKI listo para la carga previa
Sep
2026
Cierre de check-in
1 de sep1 de sep16 de septiembre16 de septiembre
GKI listo para la carga previa 15 de sep15 de sep30 de septiembre30 de septiembre
Oct
2026
Cierre de check-in
16 de octubre1 de octubre1 de octubre
GKI listo para la carga previa 31 oct.15 de octubre15 de octubre
Noviembre de
2026
Cierre de check-in
GKI listo para la carga previa
Dic
2026
Cierre de check-in
1 de dic1 de dic1 de dic1 de dic
GKI listo para la carga previa 15 de dic15 de dic15 de dic15 de dic

Validez de la compilación del GKI para los OEM

Los OEM pueden usar un GKI de Android lanzado recientemente. Los OEM pueden lanzar compilaciones certificadas por GKI siempre que cumplan con los requisitos del kernel con compatibilidad a largo plazo (LTS) que se indican en el Boletín de seguridad de Android (ASB).

Lanzamientos trimestrales certificados

Las versiones trimestrales del GKI contienen un boot.img probado que incluye un certificado insertado por Google para certificar que los archivos binarios se compilaron a partir de una referencia de código fuente conocida.

Cada trimestre, se selecciona un candidato a lanzamiento trimestral del GKI (sin certificación) después de la fecha límite de registro. Después de seleccionar la versión candidata trimestral, no se aceptarán cambios nuevos en la versión de ese mes. Durante el período de ventana cerrada, solo se pueden abordar las correcciones de errores que provocan fallas en las pruebas. La versión candidata se somete a un control de calidad, como se describe en la sección de calificación del GKI, para verificar que las pruebas de cumplimiento se aprueben en una compilación de GSI+GKI con un dispositivo de referencia y con Cuttlefish.

Cronograma de la cadencia de lanzamientos de GKI Figura 1: Cronograma de lanzamientos de GKI

Calificaciones de GKI

Tipos de compilaciones de GKI Aplicación de los estándares de calidad Notes
Trimestral (certificado) Pruebas de Cuttlefish
  • Inicio
  • VTS
  • CTS
Pruebas de hardware de referencia
  • Inicio
  • VTS
  • CTS
Respins (certificados) Pruebas de Cuttlefish
  • Inicio
  • VTS
  • Subconjunto de CTS
Pruebas en dispositivos de referencia
  • Inicio
  • VTS
  • Se basa en una compilación certificada por GKI.
  • La compilación se certifica después de la calificación.

Dónde obtener artefactos de compilación

Los OEM pueden obtener artefactos para todas las versiones desde ci.android.com.

Puedes encontrar más información sobre la CI, incluidos los resultados de las pruebas, en el panel de Integración continua de Android.

Preguntas frecuentes

Estas son algunas preguntas frecuentes relacionadas con el proceso de lanzamiento del GKI.

¿Es posible compilar un nuevo binario de GKI basado en una GKI ya lanzada?

Sí, esto se conoce como respin. El proceso de respin se admite siempre que la compilación de GKI lanzada (en la que se solicita el respin) cumpla con los requisitos de LTS que se indican en el Boletín de seguridad de Android (ASB).

¿Es posible reproducir los archivos binarios del GKI?

Sí, aquí tienes un ejemplo:

GKI 2.0
5.10 kernel prebuilts from build 7364300
https://ci.android.com/builds/submitted/7364300/kernel_aarch64/latest

Para reproducir el ejemplo, descarga manifest_$id.xml y ejecuta el siguiente comando:

repo init -u https://android.googlesource.com/kernel/manifest
mv manifest_7364300.xml .repo/manifests
repo init -m manifest_7364300.xml --depth=1
repo sync
# build the GKI images
# You may want to use LTO=thin to build faster for development
BUILD_CONFIG=common/build.config.gki.aarch64 build/build.sh
# (optional) build virtual platform modules
BUILD_CONFIG=common-modules/virtual-device/build.config.virtual_device.aarch64 build/build.sh

Puedes recuperar la copia del artefacto del GKI desde out/.../dist.

¿Se compiló el objeto binario del GKI (incluido el parche de emergencia) en la base de código más reciente?

No. Los respins solo contienen los parches que se encuentran sobre los kernels certificados trimestrales que se eligieron. Estas nuevas versiones contienen todas las correcciones de errores que impiden el lanzamiento y que informaron los OEM hasta un momento determinado con la versión trimestral base correspondiente. Consulta el siguiente ejemplo de cómo se produce este tipo de situación.

  • OEM1 y OEM2 deciden usar la versión binaria del GKI de noviembre de 2021.
  • OEM1 y OEM2 encuentran problemas que requieren parches para la asistencia. Estos parches pueden ser diferentes o iguales.
  • Los relanzamientos sobre el binario de noviembre de 2021 tienen correcciones que bloquean el lanzamiento, según lo informaron OEM1 y OEM2 durante el período de relanzamiento, pero nada más.
  • Los problemas mencionados en el segundo viñeta también se incluyen en las versiones trimestrales posteriores del GKI.

La nueva versión de octubre incluye todos los parches enviados por los OEM, pero otros parches de OEM nos afectan porque no se probaron específicamente con nuestros productos. ¿Es posible incluir solo nuestro parche?

Esto no es posible. Una ruta de reenvío para cada OEM no es escalable. En cambio, el equipo del GKI analiza cada cambio que se incluye en las compilaciones de reemisión y prueba los cambios con todo el hardware disponible antes de crear una nueva compilación. Si el equipo de GKI determina que el problema es específico de un OEM, un dispositivo o un modelo, puede verificar que el código agregado por el cambio se ejecute solo en el dispositivo, el modelo o el SKU afectados.

El principal beneficio de las nuevas versiones unificadas es que todos los dispositivos que usan la misma base de lanzamiento se benefician entre sí, especialmente si los errores que descubren son genéricos y se aplican a todos los usuarios. Los errores del kernel principal que se encuentran en las pruebas de operadores son un ejemplo específico de este concepto.

¿Hay situaciones en las que Google proporciona información específica sobre parches de OEM y situaciones de problemas para que los OEM puedan evaluar el impacto y el riesgo de implementar los parches en sus productos?

Google nunca agregará un cambio a una compilación de respin hasta que el equipo del GKI comprenda el problema y recopile todos los detalles. Puedes ver esto en el registro de cambios (mensaje de confirmación). Google no revela qué dispositivo específico se ve afectado, pero los OEM siempre pueden encontrar la descripción del problema y la solución en el registro de cambios.