偵錯

Linux 內核提供了許多機制來診斷問題,包括跟踪BPF分析。這些技術中的大多數都在通用內核映像 (GKI) 二進制內核中可用。在開發產品時,有更多的工具被集成到開發或集成過程中,其中一些需要不屬於 GKI 的內核特性。與大多數 GKI 功能一樣,我們鼓勵您與上游維護者合作,將這些功能添加到 Linux。

供應商模塊中的下游調試功能

調試功能的範圍與其他類型的功能類似,並且必須遵循與Android 特定補丁中所述相同的流程。

侵入式下游調試功能

一些有用的調試功能需要在 GKI 中禁用的特殊配置選項,因此需要特殊的內核構建。由於性能損失或不適合生產使用,這些功能可能會被禁用,但對於調試某些類型的問題是必不可少的。此類工具的示例包括清理程序(KASAN、UBSAN)、 debugfs和其他合作夥伴特定的功能和工具。

由您決定如何管理影響內核模塊接口 (KMI) 的特殊啟用調試的內核。一種常見的做法是進行內部調試構建並將生成的工件交付給內部客戶或下游開發合作夥伴。我們建議繼續將此類功能隔離到模塊中,因為 GKI 內核無法接受特定於合作夥伴的調試功能,超出了Android 特定補丁中描述的準則。