Conversation

Replying to and
We use the AOSP way of building it separately and including it in the AOSP build as a prebuilt. Qualcomm has always included a way to run the kernel build in-tree via a wrapper in each kernel source tree as a hack for development. LineageOS turned that into a generic system.
2
2
I don't like running a totally separate build system within the AOSP build system. It takes a ridiculous amount of time and memory to link the Linux kernel with full LTO and it doesn't use kati so it doesn't handle incremental builds well so I really prefer the AOSP approach.
1
4
Replying to and
Pixels build the kernels with Clang CFI which requires LTO. If you disable dynamic kernel modules, set -fvisibility=hidden as the default and avoid using ThinLTO, you get much better CFI granularity because it can see that nearly everything can't be indirectly called.
2
3
Replying to and
there's some shell scripting involved but the bulk of my complaint is architectural, it seems to be implemented in an inefficient to extend way that makes less popular architectures prone to having obscure bugs i didn't know it about gold. i like the gold link times :/
1
2
The Linux kernel on Pixels and presumably a lot of other modern Android devices is built with Clang and linked with LLD. It should all be getting upstream soon. There were a lot of political issues. It has worked for ages downstream though. Speeds up linking more than gold too.
4
Show replies