Linus Torvalds nyolc patchből álló sorozatot tett fel a kernel.org-ra, amely a page cache olvasási útvonalát gyorsítja. A munka technikailag is érdekes, de most nem ez a legnagyobb hír: a Linux megalkotója a leírásban nyíltan közli, hogy a kódot egy AI-kódolóasszisztens írta. A sorozat bevezető commitjában ez áll: „A kódot, a tesztprogramokat, a fenti lista mögötti átnézést és a szöveg első vázlatát egy LLM-alapú kódolóasszisztens (Claude Code) készítette az irányításom alatt. A méréseket a saját gépemen futtattam.”

Az ágat Torvalds beszédes névvel látta el: noref-filemap-read-with-llm. A bevezető commit október 10-én reggel került fel. A Phoronixnál Michael Larabel vette észre, miközben a Linux 7.3-rc7 kiadására várt.

Mit javít a patch?

A probléma régóta ismert. Ha sok szál ugyanabból a fájlból olvas kis darabokat, mindegyik növeli, majd csökkenti a page cache-ben tárolt folio referenciaszámlálóját. Ez a számláló egyetlen cache-sorban ül, amelyért a magok folyamatosan versengenek. Matthew Wilcox még 2024-ben hozta szóba a jelenséget egy ügyfél terhelése kapcsán.

Torvalds egy négymagos, nyolcszálas Core i7-8565U-s laptopon mérte ki a hatást. Nyolc szál 16 bájtos pread hívásokkal olvasott, és a HITM-események (amikor egy mag a másik által módosított cache-sort kéri el) 99,92 százaléka erre az egy cache-sorra esett.

A megoldás alapötlete, hogy a page cache-ből eltávolított folio csak egy RCU-türelmi idő után szabadul fel. Így az olvasó RCU-védelem alatt referencia felvétele nélkül is biztonságosan kimásolhatja az adatot, utána pedig ellenőrzi, hogy a lap közben nem cserélődött-e le.

A számok elég meggyőzőek. Nyolc szálon az olvasásonkénti kernelciklusok száma 2937–2975-ről 725–726-ra esett. Az olvasások száma másodpercenként 9,9–10,4 millióról 30–33 millióra nőtt, a HITM-ek száma pedig 30 538-ról 101-re zuhant. Egyszálas futásnál kisebb, de mérhető a javulás: 452–454 ciklus helyett 408–409.

Még messze a beolvasztás

Torvalds a hiányosságokat is felsorolja. A késleltetett felszabadítás miatt a memóriafoglaló nem látja a várakozó lapokat, Kiryl Shutsemau reprodukálójában az első hat patch-csel OOM is bekövetkezett. A CMA alloc_contig_range útvonalán regresszió jelentkezett. Az xfstests, a KASAN és a lockdep alatti tesztelés még hátravan, és minden mérés egyetlen gépről, Torvalds laptopjáról származik. A sorozat tehát véleményezésre vár, a fő ágba nem került be.

Az AI-eszközök kernelfejlesztési használatáról régóta vitatkoznak a fejlesztők. Most maga Torvalds mutatta meg, hogyan néz ki ez a gyakorlatban: ő adta az irányt és a méréseket, a kódot, a teszteket és a leírás vázlatát pedig a Claude Code készítette. Hogy a kód megállja-e a helyét, azt az alrendszer karbantartóinak átnézése dönti el, ugyanúgy, mint bármely más beküldött patch esetén.

Az Anthropic modelljei egyébként az utóbbi hetekben máshol is szerepeltek nálunk: a Claude Opus 5.5 árcsökkentéssel és új benchmarkrekordokkal érkezett, a cég pedig a használati szabályzatát is módosította.