A Phoronix informou em 29 de outubro de 2026 que uma mudança no driver FAT havia sido integrada ao Linux 7.4 naquela semana. O patch, de Matheus Alves de Almeida, agrupa a alocação de clusters no caminho FALLOC_FL_KEEP_SIZE. O maior resultado reportado, 265,4×, veio de um teste de pré-alocação, não de uma medição de cópia de arquivos.
Como o patch muda a alocação do FAT32
FALLOC_FL_KEEP_SIZE permite pré-alocar espaço em disco sem alterar o tamanho informado do arquivo. Cluster é uma unidade de alocação do sistema de arquivos. Em patch datado de 12 de outubro de 2026, Matheus Alves de Almeida propôs trocar chamadas repetidas para alocar um cluster por uma única chamada que recebe a quantidade solicitada, no caminho fat_fallocate() do driver FAT.
A mudança reduz a repetição de chamadas nessa operação específica. Segundo o autor do patch, o efeito é especialmente grande em montagens síncronas, porque o código pode agrupar atualizações FAT em vez de tratar cada alocação de cluster separadamente.
Usuários Linux também citam o FAT32 em partições EFI, sistemas embarcados e mídias removíveis compartilhadas entre sistemas e dispositivos.
O teste por trás dos 265,4×
O maior resultado da matriz foi obtido com 16 arquivos de 16 MiB, clusters FAT32 de 4.096 bytes e montagem síncrona. O tempo total do loop caiu de 92,489 para 0,348 segundo; o patch reporta uma média aritmética de 10 amostras. O ambiente indicado foi QEMU/KVM, com dispositivo virtio-blk e cache=none.
Entre os 12 casos publicados pelo patch, o menor resultado foi 5,3×. Ele corresponde a 128 arquivos de 16 KiB, clusters de 512 bytes e montagem não síncrona. O loop levou 1,287 ms antes e 0,241 ms depois, também como média de 10 amostras.
| Caso | Arquivos e tamanho por arquivo | Cluster FAT32 | Montagem síncrona | Tempo total do loop antes | Tempo total do loop depois | Aceleração reportada | Amostras |
| Maior resultado | 16 arquivos de 16 MiB | 4.096 bytes | Sim | 92,489 s | 0,348 s | 265,4× | 10 |
| Menor resultado entre os 12 casos | 128 arquivos de 16 KiB | 512 bytes | Não | 1,287 ms | 0,241 ms | 5,3× | 10 |
Pré-alocação não é cópia de arquivos
O loop cronometrado repetia chamadas a fallocate() com FALLOC_FL_KEEP_SIZE, uma por arquivo. Assim, os 265,4× descrevem esse trabalho de pré-alocação na configuração indicada. O teste não mediu a velocidade de cópia, leitura ou gravação comum de arquivos FAT32.