De FAT32-wijziging die volgens Phoronix op 29 oktober 2026 die week in Linux 7.4 was opgenomen, bundelt in de FALLOC_FL_KEEP_SIZE-route meerdere clusterallocaties in één aanroep. Patchauteur Matheus Alves de Almeida rapporteerde daarbij maximaal 265,4× winst voor deze specifieke preallocatietaak.

Wat verandert er aan FAT32-toewijzing?

FALLOC_FL_KEEP_SIZE laat een programma vooraf schijfruimte reserveren zonder de gerapporteerde bestandsgrootte te veranderen. De patch van Matheus Alves de Almeida, gedateerd 12 oktober 2026, wijzigt de manier waarop de FAT-driver die reservering uitvoert: in de groeiroute van fat_fallocate() vervangt één aanroep van fat_add_clusters() met het gevraagde aantal clusters de herhaalde aanroepen voor één cluster.

Op een synchrone mount kan de aangepaste code FAT-updates bundelen in plaats van elke clusterallocatie afzonderlijk synchroon af te handelen. Dat noemt Almeida als verklaring voor de grotere winst op zulke mounts.

Eén aanroep voor meerdere clusters

De wijziging zit in het pad dat ruimte voor een bestand vooraf reserveert. Ze betreft niet alle FAT32-bestandsbewerkingen. Het schema verduidelijkt hoe de patch herhaalde aanroepen voor één cluster vervangt door één aanroep met het gevraagde aantal clusters.

De benchmark achter de 265,4×

Conceptueel schema met herhaalde afzonderlijke clusterallocaties tegenover één gebundelde aanroep.

Almeida’s benchmark gebruikte QEMU/KVM, virtio-blk en cache=none. De lus riep voor elk bestand fallocate() aan. De tijden hieronder zijn de totale looptijden van die lus, gemiddeld over 10 metingen, niet de tijd per bestand.

TestgevalBestanden en grootte per bestandFAT32-clustergrootteSynchrone mountTotale looptijd vóórTotale looptijd naGemelde verbeteringMetingen
Piekgeval16 × 16 MiB4.096 bytesJa92,489 s0,348 s265,4×10
Laagste van 12 gevallen128 × 16 KiB512 bytesNee1,287 ms0,241 ms5,3×10

Preallocatie is geen kopieertest

De benchmarklus herhaalde fallocate() met FALLOC_FL_KEEP_SIZE om ruimte vooraf te reserveren. Hij mat geen gewone bestandsoverdracht. De gemelde 265,4× is daarom geen gemeten versnelling voor het kopiëren, lezen of schrijven van FAT32-bestanden.