A 27 éves Linux kernel kódrészletet végre eltávolítottak – mindezt az AI botoknak „köszönhetjük”

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Linux kernel egyik legrégebb óta hordozott, gyakorlatilag elfelejtett illesztőprogramja, a Moxa Intellio multiport soros driver története jól megmutatja, hogyan találkozik a modern mesterséges intelligencia a több évtizedes, stabil, de elavult kódbázissal. A több mint két évtizede a kernelben lévő kódot nem technikai hiba, nem is egy új funkció, hanem az AI-alapú kódelemzők által generált zaj „takarította ki” végleg a forrásfából.

Mi is volt a Moxa Intellio driver?

A Moxa Intellio multiport soros driver egy speciális, többportos soros (RS-232/RS-422/RS-485) kártyacsalád támogatását biztosította a Linux kernelben. Ezeket a kártyákat tipikusan ipari, beágyazott és infrastruktúra-jellegű rendszerekben használták: terminál szerverek, ipari vezérlők, régi POS-rendszerek, soros vonalon kommunikáló mérőeszközök, PLC-k, modemek és egyéb, ma már nagyrészt leváltott eszközök csatlakoztatására.

A driver 1999-ben került be a Linux kernelbe, vagyis még bőven a 2.2/2.3-as ág idején, amikor a Linux elsősorban szervereken és fejlesztői gépeken terjedt, és a soros kommunikáció kulcsfontosságú volt. A kód mérete 2148 sor körül mozgott, ami egy viszonylag kompakt, de nem triviális illesztőprogramnak felel meg: tartalmazta a hardver inicializálását, az IRQ-kezelést, a soros vonal paramétereinek beállítását, pufferkezelést, valamint az akkoriban szokásos TTY alrendszerhez való illesztést.

A Moxa a hardvert 2017-ben hivatalosan kivezette a piacról, és 2023-ban a szoftveres támogatást is megszüntette. Ezzel a driver gyakorlatilag „zombivá” vált: a kernelben ott volt, de a gyártó már nem forgalmazta az eszközt, nem adott ki új firmware-t, és nem vállalt támogatást. A Linux kernelben azonban tovább élt, elsősorban a visszafelé kompatibilitás és a „ha még valaki használja” elv miatt.

Miért maradnak bent ilyen sokáig a régi driverek a kernelben?

A Linux kernel egyik erőssége, hogy elképesztően széles hardverpalettát támogat, a legújabb ARM SoC-któl a több évtizedes x86-os kártyákig. Linus Torvalds többször hangsúlyozta, hogy nem különösebben „szentimentális” a régi technológiákkal szemben, ugyanakkor a gyakorlatban a kernel közösség nagyon óvatos a régi driverek eltávolításával. Ennek több oka van:

  • Stabilitás és bizalom: sok vállalati és ipari rendszer évtizedes életciklussal működik. Egy driver eltávolítása azt jelentheti, hogy egy régi, de kritikus rendszer nem tud új kernelre frissíteni.
  • „Ha nem romlott el, ne javítsd meg” elv: ha egy driver nem okoz gondot, nem ütközik új alrendszerekkel, és nem igényel karbantartást, gyakran egyszerűbb bent hagyni, mint kivenni.
  • Széles disztribúciós spektrum: a nagy disztribúciók (Debian, Ubuntu, RHEL, SUSE, Fedora, Linux Mint stb.) általában „általános célú” kernelt szállítanak, amelyben minél több driver elérhető, hogy a felhasználónak ne kelljen saját kernelt fordítania.

A Moxa Intellio driver tipikusan ilyen „csendes túlélő” volt: a kód ott volt, ritkán nyúltak hozzá, nem okozott látványos problémákat, és valószínűleg csak nagyon szűk kör használta – ha egyáltalán.

Az AI belép a képbe: LLM-ek és a „hamis pozitívok” problémája

A történet fordulópontját nem egy kernel API-változás vagy egy hardverhibáról szóló bugreport hozta el, hanem a modern, nagy nyelvi modellek (LLM-ek) megjelenése a kódelemzésben. Egyre több fejlesztő, kutató és automatizált eszköz használ LLM-alapú „kódasszisztenst” vagy statikus elemzőt, amely képes a kernel forráskódját átfésülni, és „érdekes” mintákat, potenciális hibákat, biztonsági réseket keresni.

Greg Kroah-Hartman, a stabil Linux kernel ág egyik fő karbantartója úgy fogalmazott, hogy az LLM-ek elkezdték „piszkálni” ezt a régi drivert, és „érdekesnek tűnő” problémákat találtak benne – amelyek a gyakorlatban nem voltak valós hibák. Ezek a jelentések azonban időt és figyelmet követelnek a karbantartóktól: át kell nézni, ellenőrizni kell, hogy valóban létezik-e a hiba, érint-e valós felhasználókat, és szükséges-e javítás.

Az LLM-ek egyik ismert gyengesége, hogy hajlamosak „hallucinálni”: meggyőzőnek tűnő, de valójában téves következtetéseket adnak. Kódelemzésnél ez azt jelenti, hogy olyan „bugokat” jelentenek, amelyek vagy nem léteznek, vagy a kontextus figyelmen kívül hagyása miatt félreértett minták. A kernel fejlesztői közösség már több alkalommal jelezte, hogy az AI által generált patch-ek és bugreportok jelentős része használhatatlan, sőt, néha kifejezetten káros, mert felesleges munkát generál.

A Moxa Intellio driver esetében a helyzet különösen abszurd volt: egy olyan kódrészletre irányult a figyelem, amely egy már évekkel ezelőtt kivezetett hardvert támogatott, és amelyhez a gyártó sem nyújtott már semmilyen támogatást. Greg Kroah-Hartman szavaival élve az LLM-ek „érdekesnek” találták a kódot, de a valóságban csak mindenki idejét pazarolták volna.

A gyártó maga is a törlés mellett volt

A történet egyik fontos, és kevésbé ismert eleme, hogy maga a Moxa is jelezte: a driver eltávolítása a helyes lépés. A cég 2023-ban lezárta a szoftveres támogatást, és felajánlotta, hogy segít a kernelből való eltávolításhoz szükséges patch megírásában. Ez ritka, de nagyon tiszta helyzetet teremtett: a gyártó nem csak hogy nem ragaszkodott a driverhez, hanem aktívan támogatta a takarítást.

Ez a gyakorlatban azt jelenti, hogy:

  • nincs hivatalos támogatás a hardverhez,
  • nincs új firmware vagy dokumentációfrissítés,
  • nincs vállalati ügyfél, akinek a támogatási szerződése a Linux kernel driverre épülne.

Ilyen körülmények között a kernel karbantartói számára logikus döntés volt: ha a driver fenntartása csak zajt generál (AI-jelentések, felesleges bugreportok), miközben valós felhasználói bázisa gyakorlatilag nincs, akkor egyszerűbb és biztonságosabb eltávolítani.

AI, amely nem javít, hanem takarítást kényszerít ki

Érdekes irónia, hogy miközben sokan az AI-tól a kódminőség javulását, a hibák automatikus megtalálását és javítását várják, ebben az esetben éppen az ellenkezője történt: az AI által generált „találatok” annyi felesleges figyelmet irányítottak egy elavult driverre, hogy a karbantartók számára a legkisebb ellenállás iránya a teljes eltávolítás lett.

Ez több tanulságot is hordoz a Linux kernel és általában a nagy, nyílt forrású projektek számára:

  • Az AI nem helyettesíti a domain-szakértelmet: a kernel fejlesztői pontosan tudják, mely driverek kritikusak, melyek élő hardvert támogatnak, és melyek „zombik”. Egy LLM ezt a kontextust nem látja, csak a kódot.
  • A hamis pozitívok ára magas: minden egyes téves bugreport, AI-generált patch vagy „érdekes” megjegyzés emberi időt éget el – és a kernel fejlesztői közösség ideje drága erőforrás.
  • Az AI katalizálhatja a takarítást: ha egy kódrészlet csak problémákat hoz, de valós haszna nincs, az AI által generált zaj végső soron felgyorsíthatja annak eltávolítását.

Ellentmond-e ez Torvalds „nem szentimentális” hozzáállásának?

Felmerül a kérdés: ha Linus Torvalds deklaráltan nem érzelgős a régi technológiákkal kapcsolatban, akkor miért tartott a kernel ilyen sokáig egy 1999-es drivert, és miért tűnik úgy, hogy az AI által kiváltott lépés mégis „szembemegy” ezzel a hozzáállással?

A válasz árnyaltabb. Torvalds hozzáállása alapvetően pragmatikus: ha valamit sokan használnak, stabil, és nincs jobb alternatíva, akkor maradjon. Ha valami gondot okoz, vagy aktívan gátolja a fejlődést, akkor menjen. A Moxa Intellio driver esete azért különleges, mert:

  • a hardver már nem kapható,
  • a gyártó sem támogatja,
  • a driver karbantartása nem hoz valós hasznot,
  • az AI-eszközök miatt viszont egyre több „műbalhé” keletkezik körülötte.

Ebben az értelemben a driver eltávolítása nem ellentmondás, hanem éppen a pragmatikus hozzáállás következetes alkalmazása: ha egy kódrészlet nettó teher, akkor jobb megszabadulni tőle. Az, hogy a döntést közvetve az AI által generált zaj katalizálta, inkább a környezet változását mutatja, nem pedig elvi fordulatot.

Mit jelent ez a gyakorlatban a felhasználóknak és a disztribúcióknak?

A legtöbb modern Linux disztribúció – így a desktop-orientált rendszerek, például a Linux Mint – felhasználóinak túlnyomó többsége számára ez a változás gyakorlatilag észrevétlen marad. A Moxa Intellio kártyák tipikusan nem otthoni PC-kben, hanem ipari vagy speciális szerverekben futottak.

Akik mégis ilyen hardvert használnak, azok számára a lehetőségek erősen korlátozottak:

  • régebbi kernelverzió használata, amelyben a driver még elérhető,
  • saját, patchelt kernel fordítása, amelyben a régi driver forráskódját visszaviszik,
  • alternatív hardverre való migráció (modern többportos soros kártyák, USB-sorosos átalakítók, Ethernet–soros gateway-ek).

Mivel a Moxa maga is megszüntette a támogatást, a hosszú távú, biztonságos üzemeltetés amúgy is kérdéses lenne. A kernelből való eltávolítás inkább formálissá teszi azt, ami a gyakorlatban már megtörtént: ez a hardver-generáció kifutott.

Összehasonlítás más „régi” driverekkel

Érdemes megjegyezni, hogy a Linux kernelben továbbra is rengeteg, a 90-es évekből vagy a 2000-es évek elejéről származó driver található. Sok régi hálózati kártya, SCSI-vezérlő, IDE-meghajtó, hangkártya és soros adapter támogatása ma is él, mert:

  • még léteznek működő példányok,
  • vannak felhasználók, akik ezeket aktívan használják,
  • nem generálnak aránytalan karbantartási terhet.

A Moxa Intellio driver tehát nem azért tűnt el, mert „régi”, hanem mert a régi és elavult státusza mellé társult a gyártói támogatás megszűnése és az AI-eszközök által generált felesleges zaj. Más, hasonló korú driverek addig maradnak, amíg valós felhasználói bázisuk van, és nem válnak karbantartási teherré.

Jövőkép: hogyan illeszkedik az AI a kernel fejlesztési folyamataiba?

A Moxa Intellio driver esete csak egy epizód egy nagyobb történetben: hogyan lehet a mesterséges intelligenciát értelmesen integrálni olyan projektekbe, mint a Linux kernel, ahol a minőség, a stabilitás és a biztonság kritikus.

Néhány lehetséges irány, amelyről a közösség már most is gondolkodik:

  • AI mint „első szűrő”: az LLM-ek segíthetnek potenciális problémák gyors felderítésében, de az eredményeket kötelezően emberi szakértőnek kell validálnia.
  • Strukturált bugreportok: ha AI-t használnak hibakeresésre, akkor a jelentéseknek követniük kell a kernel közösség által elvárt formátumot (reprodukálhatóság, pontos verziók, logok), nem elég egy „a modell szerint itt hiba lehet” típusú megjegyzés.
  • AI a dokumentáció és refaktorálás támogatására: kevésbé kritikus területeken – például kommentek javítása, dokumentáció generálása, egyszerű refaktorálások javaslata – az AI hasznos lehet, ha a változtatásokat gondosan review-zzák.

Ugyanakkor a kernel fejlesztői egyértelműen jelzik: az AI által generált kód és bugreport nem mentesít a felelősség alól. Aki patch-et küld, annak értenie kell, mit csinál a kód, és vállalnia kell a következményeket. A Moxa Intellio driver körüli „AI-zaj” jó példa arra, mi történik, ha ez a felelősségvállalás hiányzik.

Mit gondolhat erről egy Linux-felhasználó?

Felhasználói szemmel nézve a történet két fő üzenetet hordoz:

  • A Linux kernel élő, folyamatosan változó projekt: még 20+ éves driverek is kikerülhetnek, ha már nincs rájuk valós igény, vagy ha a karbantartásuk aránytalan terhet jelent.
  • Az AI nem varázspálca: önmagában nem teszi „jobbá” a kernelt, sőt, ha felelőtlenül használják, több kárt okozhat, mint hasznot. A valódi értéket akkor adja, ha tapasztalt fejlesztők eszközként használják, nem pedig döntéshozóként.

Hogy ez a konkrét lépés „ellentmond-e” Torvalds korábbi kijelentéseinek, az nézőpont kérdése. A kernel gyakorlatában ez inkább egy logikus, régóta esedékes takarítás, amelyet a mesterséges intelligencia csak felgyorsított – és közben rávilágított arra, hogy a több évtizedes kódbázis és az új AI-eszközök találkozása nem mindig úgy alakul, ahogy a marketinganyagok ígérik.