Huawei se ptal Mesy na ovladač s uzavřenou částí kompilátoru, tři vývojáři byli proti
Inženýr Huawei poslal 30. července do mailing listu Mesy dotaz, jestli by projekt přijal ovladač Vulkan pro jejich vlastní grafický čip. Jedna část kompilátoru by zůstala binárkou, protože instrukční sadu firma zveřejnit nesmí. Během dne odpověděli tři vývojáři a žádný z nich pro to nebyl.

Ve čtvrtek 30. července v 1.49 UTC dorazil do mailing listu projektu Mesa dotaz s předmětem Upstreaming a Vulkan driver with a closed shader backend. Napsal ho jingxu zhang a hned v první větě uvedl, pro koho pracuje: dělá v Huawei na ovladači Vulkan pro grafický čip, který si firma navrhuje sama. Odeslal ho ze soukromé adresy na Gmailu, ne z firemní.
Mesa je sbírka otevřených grafických ovladačů; vyvíjí se hlavně pro Linux, ale podle vlastní dokumentace běží i na Windows a dalších systémech. Patří do ní i RADV, ovladač Vulkan pro karty AMD, jehož port na Windows platí Valve.
Co přesně by zůstalo zavřené
Zhang popsal jedno omezení. Instrukční sadu čipu, tedy soupis příkazů, kterým procesor rozumí, Huawei zveřejnit nemůže. Z toho plyne dělení: samotný ovladač otevřený být může, stejně jako převody na úrovni NIR, což je společný mezijazyk, do kterého Mesa shadery překládá, než z nich udělá strojový kód. Zavřená by zůstala jen poslední fáze, která NIR přeloží do strojového kódu Huawei. Ta by se dodávala jako binárka, kterou si ovladač natáhne za běhu.
Ten rozdíl stojí za zdůraznění, protože se v přetisku ztratil. Phoronix o věci napsal, že open source nemůže být kompilátor shaderů; ve skutečnosti jde jen o jeho koncovou část. Zbytek řetězce, včetně optimalizací nad NIR, by byl k dispozici.
Zhang zároveň napsal, že si přečetl dva dokumenty projektu, docs/license.rst a docs/submittingpatches.rst, a ani v jednom takový zákaz nenašel. Dodal ale, že mlčení nepovažuje za souhlas. Také uvedl, že nenašel starší případ, kdy by se na totéž ptal jiný výrobce, ať už dopadl jakkoli.
Odpověď přišla za sedm hodin
V 8.54 UTC odpověděl Dave Airlie, který podle serveru Phoronix pracuje v Red Hatu. Začal jednou větou: „It's very unlikely we would accept this upstream, just open the ISA, your customers will be much happier in the long run.“ V překladu: je velmi nepravděpodobné, že by to projekt přijal, ať Huawei radši otevře instrukční sadu, zákazníci z toho budou mít v delším běhu víc.
Pak vyjmenoval důvody. První je nerovnováha: podle něj by z takového uspořádání měl výrobce víc než projekt. Druhý je technický a míří na to, že by uprostřed stromu vzniklo umělé rozhraní mezi otevřenou a zavřenou částí. Airlie k tomu připsal, že problémů s rozhraním vůči LLVM má Mesa dost i teď, „and that's open source“ – a to je open source; zavřená obdoba by podle něj byla „horribly limiting“, tedy hrozně svazující.
Třetí důvod je o rovných podmínkách. Ostatní, kdo mají kód v Mese, si s tím poradili, píše Airlie, a ptá se, proč by komunita měla pouštět dovnitř někoho, kdo na stejnou laťku nedosáhne.
Nakonec přidal poznámku, která by před dvěma lety nedávala smysl: „With claude it would take someone who cared a week of tokens to figure out your ISA, I'm not sure what secret you'd be hiding.“ Tedy že s jazykovým modelem by odhalení instrukční sady stálo někoho zaujatého týden tokenů, a Airlie si není jistý, jaké tajemství by se tím vlastně chránilo.
Zbylí dva se přidali
Odpoledne dorazily další dvě reakce. Alyssa Rosenzweig napsala dvě věty: přidává se k Daveovi a pro jakýkoli otevřený ovladač je tohle naprosto nepřijatelné. O šestatřicet minut později Faith Ekstrand souhlasila s Airliem a dodala, že jakkoli by ráda viděla podporu čipů Huawei v Mese, závislost na vnějším binárním kompilátoru prostě není schůdná.
Formálně nešlo o rozhodnutí projektu. Zhang žádný kód nepodal, jen se zeptal, a v listu se nehlasovalo. Odpověděli mu ale tři lidé, kteří v Mese dlouhodobě pracují, a shodli se.
Zákaz v pravidlech opravdu není
V jedné věci měl Zhang pravdu. Dokumentace Mesy o binárních částech ovladače nemluví: stránka o licenci jen popisuje, že jádro knihovny je pod licencí MIT, jednotlivé soubory můžou mít vlastní licenci a rozhodující je identifikátor SPDX přímo ve zdrojovém souboru. Žádná věta o tom, že ovladač nesmí za běhu natahovat binárku, tam není.
Odpor je tedy zavedená praxe, ne odstavec v pravidlech. Opírá se o to, co říká Airlie: ostatní si s tím poradili. Dokumentace Mesy vede jako otevřený ovladač Vulkan třeba PowerVR pro čipy Imagination Technologies.
Jak to nejspíš dopadne
Zhang na konci dotazu napsal, že v otevírání kódu bude Huawei pokračovat tak jako tak. Otázka podle něj zněla jen, jestli tu práci mířit do hlavního stromu Mesy. Pokud firma instrukční sadu nezveřejní, zůstane ovladač nejspíš mimo něj, tedy jako samostatný projekt, který si musí uživatel sehnat a udržovat sám.
O jaký čip vlastně jde, se z vlákna nedozvíte. Zhang návrh nijak nepopsal a Phoronix k tomu dodává, že Huawei dnes neprodává herní ani univerzální grafické karty; má akcelerátory Ascend a Atlas určené pro výpočty umělé inteligence. Jestli je ovladač Vulkan právě pro ně, ani jeden zdroj neuvádí.
Podle nás je na celé věci zajímavější Airlieho argument o tokenech než samotné odmítnutí. Utajení instrukční sady bylo dlouho drahé prolomit. Jestli platí, že dnes stačí týden strojového času, ztrácí smysl chránit ji zrovna tímhle způsobem.
Zdroje
- Vlákno Upstreaming a Vulkan driver with a closed shader backend v archivu mailing listu mesa-dev, 30. července 2026
- Phoronix: Huawei Considers Open-Sourcing A Half-Hearted Mesa Vulkan Driver
- Dokumentace Mesy: License and Copyright