I'm optimistic about the Motorola partnership and when my 9 Pro is EOL I'll definitely look at how that's played out.
It's a completely different story for GrapheneOS where it means losing one of the main kernel and userspace security protections. This is one of the only ways we can significantly harden the Linux kernel with existing security features. The Linux kernel has always been a huge security liability for Android and AI models are making that much more obvious to everyone.
Google will likely end up heavily using MTE in the future. Pixel 11 devices won't be able to benefit from it. They're at the start of 7 years of updates but they won't be getting the benefit of future updates enabling MTE. Pixel 8 and later will benefit from Google likely expanding use of MTE for AAPM and eventually beginning to use it by default. It's unlikely Google will stop working on expanding MTE due to the Pixel 11 hardware decision. Multiple other OEMs are interested in MTE for devices made for businesses and governments even if Google decided it wasn't worth the cost for Pixels.
It would be inconsistent to require Motorola to provide MTE support and then to support the Pixel 11 without it.
There are no phones directly supported by AOSP. Motorola is helping us support their devices and port our features to them. We have to do an immense amount of work on it ourselves for Pixels and already did a lot of it for the Pixel 11 devices. Other devices are missing more than MTE.
Regarding direct AOSP support, there are many devices that work fine with just the generic system image, which I'd count as direct AOSP support.
I believe nothing prevents other individuals and organisations from building what you're suggesting with GrapheneOS code and ideas.
- They claim Apple did a great job integrating MIE in iOS - iOS doesn't encourage to opt into MTE ... Apple's docs warn developers of performance and stability issues
So it seems like even for iOS, this special security feature is only available for Apple own iOS app (at most?).
Then also:
> Even Signal doesn't opt-in. Our approach enables forcing using MTE in the standard allocators regardless.
So does that mean that Signal and any other apps are enrolled in MTE on Graphene?
Android has more app ecosystem adoption than iOS due to having a better open source app ecosystem where GrapheneOS users have asked apps to enable it by default. Many GrapheneOS users are also force enabling MTE for user installed apps via our recommended toggle for it. Those users are reporting invalid memory access to developers via our dedicated notification system for invalid memory accesses it catches. For Android app developers, not opting into MTE doesn't mean their app won't be used with MTE due to GrapheneOS.
GrapheneOS uses MTE for the kernel and nearly every userspace process including all the base OS apps. We've had to fix many upstream Linux kernel and Pixel kernel driver bugs found by MTE. However, we aren't trying to fix the Pixel userspace drivers code ourselves so we have a few userspace processes excluded from MTE caused by userspace driver library/service bugs.
We recommend users enable our toggle for enabling MTE by default for every user installed app not explicitly marked as incompatible in our compatibility database. GrapheneOS has user-facing notifications for invalid memory accesses caught by MTE providing a traceback to share with the app developers. Users can use the per-app toggle to work around it if it makes an app unusable. We take the same approach for other aggressive exploit protections provided by GrapheneOS. Exploit protections with only rare compatibility issues are enabled by default for apps with a per-app toggle to opt-out and no toggle for the global default.