A Linux 7.2 kernel egyik VFS fejlesztése kis méretű kódmódosítással javítja az EXT4 és az XFS teljesítményét nagy IOPS-terhelés alatt. A módosítás az IOmap keretrendszert érinti, amely a fájlokon belüli logikai adatpozíciókat a háttértáron található fizikai helyekhez kapcsolja. Ez a réteg nagy sebességű NVMe SSD-k és io_uring használata mellett kifejezetten érzékeny lehet a fölösleges memóriaműveletekre.

A napokban beolvasztott pull request az iomap_iter() függvény működésén változtat. A korábbi kód az iteráció befejezése után memset művelettel törölte az iomap struktúrát, noha a hívó fél a kész iterátort ezután eldobta. Nagy IOPS-terhelésnél, például 4 kilobájtos véletlenszerű NVMe-olvasás, polling mód és io_uring használata mellett ez a fölösleges memóriaírás mérhető memóriasávszélességet foglalt el.
A kernel patchet Fengnan Chang, a ByteDance mérnöke készítette, miután azonosította a haszontalan memóriaírásból eredő veszteséget. A változtatás az EXT4 és az XFS fájlrendszeren nagyjából 5 százalékos IOPS-növekedést eredményezett a mért terhelés alatt. A teljesítményjavulás azért is érdekes, mert mindössze két kódsor áthelyezésére volt hozzá szükség. Ugyanez a VFS pull request az XFS jövőbeli FS-VERITY támogatásához szükséges infrastruktúrát is bővíti. Az FS-VERITY fájlszintű integritás-ellenőrzést tesz lehetővé, az XFS esetében pedig a megvalósítás egy fájlvég után tárolt Merkle-fára épülhet. Ez a fejlesztés előkészíti az XFS egyik régóta várt képességének megjelenését.
