Pixel 11 Has Hardware MTE Support, "May Still Be Usable" for GrapheneOS

Pixel 11 Has Hardware MTE Support, "May Still Be Usable" for GrapheneOS

After GrapheneOS previously hit a roadblock porting to the Pixel 11 due to a missing security feature, they found the hardware does have "at least bare minimum support for MTE."

GrapheneOS (@grapheneos.org)
We have good news about the Pixel 11. It still has at least bare minimum support for MTE at a hardware level. We think they removed most of the hardware acceleration from the CPU cache to save money. They ruined the performance so it ended up being fully disabled in firmware. It may still be usable.

GrapheneOS is a security-focused operating system based on Android Open Source Project (AOSP). Historically, it's only been available on Google Pixel phones since they are currently the only devices that meet the minimum requirements for security.

One of these requirements is support for a feature called Memory Tagging Extension (MTE). MTE is a feature in ARM chips that can detect memory safety bugs in software: situations in which memory is accessed when it's not supposed to be.

Memory safety bugs made up around 76% of vulnerabilities in Android at one point, according to Google's data. Switching to memory-safe languages like Rust helped them significantly reduce that number.

Not all parts of Android or all apps are written in memory-safe languages though, and for those MTE shines. When MTE detects a memory safety violation, it can crash the offending app to prevent an exploit and protect your phone.

Google Pixels were the first phones to ship with MTE support, and continue to be the only Android devices that officially support it, according to AOSP. Apple shipped their implementation of MTE in the form of Memory Integrity Enforcement (MIE) on iPhone 17 and later devices.

Since Pixels have a reputation for being the most secure Android devices, it was a bit of a shock that the Pixel 11 seemingly removed support for MTE, the feature it had been the first to bring to market.

However, with the release of Android 17 QPR2 Beta 4, it appears support has been added back to the firmware. "MTE support is still completely disabled in the OS and arm64.nomte is unconditionally passed by the firmware to the kernel," according to GrapheneOS.

They say it's still possible to enable, however.

GrapheneOS (@grapheneos.org)
It’s possible to enable reserving the tag memory for MTE via `fastboot oem mte on`, boot a non-stock kernel ignoring arm64.nomte and use MTE. We’re in the process of determining whether it’s fully functional and the performance characteristics. It’s likely disabled due to performance being ruined.

Google has not responded to GrapheneOS's inquiries about MTE.

Community Discussion