Mesa3D má perfektní CI, miliony testů - Khronos suite (GL,VK,CL), piglit (většinou testy psané na základě opravených bugů), Skia tests, herní traces, tzn. v je velice dobře možné validovat, jestli LLM něco rozbilo. Tady by to mohlo dávat smysl.
V podstatě, teoreticky by se takto dali udržovat i staré drivery typu r300 (čest památce mému noťasu s ATI X1250) atd. Kód by byl stranou, ale LLMko by ho syncovalo oproti změnám v upstream Mese... za cenu nějakého zpomalení by drivery běhali i s moderním stackem.
Aj tak som kvoli bugom v intelackych mesa driveroch uz 2x tento rok nahadzoval mesa-git :)
BTW: Kod R300 sa udrzuje, na moje velke prekvapenie.
Windows drivers ABI je navrženo s rozmyslem a dopředu kompatibilní. Takže fungují staré ovladače v novějším Windows. Naopak Linus Torvalds oficiálně říká, že kernelspace se má rozbíjet, aby tlačil na výrobce HW mít ovladače opensource.
Microsoft ma svoje lidi ve standatizacnich komisich pro HW standarty a navic ma urcite pristup k ruznym prototypum HW. Takze je nove vlastnosti neprekvapi.
Linux je napak reaktivni a regaguje na zmeny az kdyz prijdnou.
IMHO nejcastejsi zmena ABI v Linuxu je situace kde ma funkce/struct ma X parametru a prida jeden parametr navic. Vetsina ovladacu vrati u X+1 parametru NULL a nejaky novy HW u toho noveho parametru vrati nejaka data navic.
Přidání parametru do struct uměl WinAPI už nejmíň od Windows 3.x. S odkazem na struct se předává i velikost, kolik ten tvůj má, a Windows pak ví, která nová políčka tvoje struct neobsahuje. Taky předávání struktury místo jednotlivých položek řeší chybějící podporu volitelných parametrů ve funkcích v C.
10. 6. 2026, 10:57 editováno autorem komentáře