El kernel de Linux proporciona muchos mecanismos para diagnosticar problemas, incluidos el seguimiento , BPF y la creación de perfiles . La mayoría de estas técnicas están disponibles en el kernel binario Generic Kernel Image (GKI). Al desarrollar productos, hay muchas más herramientas que se integran en los procesos de desarrollo o integración, algunas de las cuales requieren características del kernel que no forman parte de GKI. Como ocurre con la mayoría de las funciones de GKI, le recomendamos que trabaje con los mantenedores anteriores para agregar estas funciones a Linux.
Funciones de depuración posteriores en módulos de proveedores
Las funciones de depuración tienen un alcance similar a otros tipos de funciones y deben seguir los mismos procesos que se describen en los parches específicos de Android .
Funciones de depuración intrusivas posteriores
Algunas funciones de depuración útiles requieren opciones de configuración especiales que están deshabilitadas en GKI y, por lo tanto, requieren una compilación especial del kernel. Estas funciones pueden deshabilitarse debido a penalizaciones de rendimiento o falta de idoneidad para el uso en producción, pero son indispensables para depurar ciertos tipos de problemas. Ejemplos de dichas herramientas incluyen desinfectantes (KASAN, UBSAN), debugfs
y otras funciones y herramientas específicas de los socios.
Depende de usted determinar cómo administra los kernels especiales habilitados para depuración que afectan la interfaz del módulo kernel (KMI). Una práctica común es crear una depuración interna y entregar los artefactos resultantes a clientes internos o socios de desarrollo posteriores. Recomendamos continuar aislando dichas funciones en módulos, ya que las funciones de depuración específicas de los socios no se pueden aceptar en el kernel de GKI más allá de las pautas descritas en los parches específicos de Android .