Android 13 will get official support for exFAT after years of development hell

A very subtle change allowed a Pixel 6 Pro to read an exFAT formatted drive, but it took a lot to get there

Android 13 will, for the first time, enable a Pixel device’s ability to handle files larger than 4GB of disk space. But the story of how the exFAT file format was supported on the Pixel 6 has been evolving bit by bit over a long period of time.

We have Esper Technical Writer Mishaal Rahman to thank for walking down the garden path after realizing that exFAT (Extensible File Allocation Table) support was only available on his Pixel 6 Pro after downloading it from Android 12L moved to Android 13 had beta. Considering that exFAT support is available for Android versions running on Linux kernel version 5.10 or later, and Android 12L on 5.10.81-android12-9 and the beta on 5.10.107-android13- 4 was something was wrong place here.

ANDROID POLICE VIDEO OF THE DAY

If you own a non-Google Android device and happen to use exFAT drives with it, you might be wondering what all the fuss is about. Turns out they had paid Microsoft – the creator of exFAT in 2006 and therefore its owner – to support it so that their hardware could work with the wide range of accessories formatted in exFAT. Samsung was one of the OEMs that paid for support and then developed a back-pocket exFAT driver. After Microsoft released exFAT in 2019 and promoted its integration into Linux, the kernel community started working on ways to do this. Samsung’s exFAT driver was revised and eventually chosen for Linux 5.7.


Android kernel development and in-chain developers do not like having to switch versions so quickly, preferring to maintain long-term support for a specific version to ensure a more stable platform. At that time, the Android Common Kernel maintained by Google was based on Linux 5.4 and only formed a new branch with 5.10. In any case, Android 12 devices based on the 5.10 kernel technically support exFAT mounting and dismounting. So what was stopping the Pixel 6 Pro on 12L from reading an exFAT drive?

It turns out that the mount service for exFAT, known as the volume daemon or vold, checks if it has access to a few specific “helper” binaries. If they are not present, the assembly service will not pass the test and will not work. It seems that the Android 12 builds that ran the Pixel 6 Pro didn’t have these binaries because they weren’t being called from their designated library. Presumably this call is present in the Android 13 builds. And that’s how Android 13 supports exFAT… well, officially speaking – at least one custom kernel developer has apparently been able to patch the exFAT driver’s binary check-out, so it theoretically backports to an older version of Android could become .


Eventually, other OEMs will be able to customize exFAT support directly from AOSP once Google exports its changes from Android 13.

If you enjoyed this story, you will definitely enjoy another rabbit hole with Android, Huawei and the newfangled EROFS file format. And if you enjoy both of those stories, we honestly can’t recommend Mishaal’s Android Dessert Bytes column enough.