L’article ne peut pas être activé avec JavaScript. Vous pouvez également activer JavaScript dans votre navigateur et sur la nouvelle page.
Le responsable de Valve sur le système de suivi des problèmes Proton a répondu à une demande de fusion d’un correctif de crash pour Warhammer 40 000 : Space Marine 2 en soulignant la règle de Wine sur le code écrit avec un grand modèle de langage. Le commentaire a été publié à 01h10 UTC le 3 octobre à partir du compte kisak-valve, que GitHub marque MEMBRE sur les référentiels de Valve, et il dit que « toute modification pouvant être apportée à Wine en amont doit d’abord être effectuée en amont », et que la réponse de la FAQ des développeurs de Wine sur le code généré par LLM « doit être prise en considération lors de cette opération ».
La réponse commence par un mot. « Non. Le statut de droit d’auteur et de licence du code généré par LLM n’est pas bien défini, et nous ne pouvons pas supposer que nous sommes autorisés à distribuer ce code sous la licence Wine », indique la FAQ des développeurs du projet.
Un contributeur a mesuré la faille par rapport à Windows
Le patch prototype modifie le code d’attente sur l’adresse de ntdll, où un thread dont l’attente a expiré peut être réveillé au même instant par un autre thread et laissé avec une alerte qui met ensuite fin plus tôt à sa prochaine attente. Un contributeur sur le tracker de Valve a publié une comparaison le 30 septembre entre Windows 11 25H2, build 26200.9457 et Proton Experimental 11.0-20260924 sur la même machine, Windows s’exécutant sur une machine virtuelle QEMU/KVM sur quatre processeurs logiques.
D’après ces chiffres, une attente SleepConditionVariableCS non bouclée est revenue alors que le résultat attendu était toujours en attente 0 fois sur 100 097 attentes sous Windows, contre 69 195 fois sur 529 155 attentes sur Proton, soit environ 13 %. Les attentes sans délai d’attente qui ont expiré pendant qu’un autre thread les retirait de la file d’attente n’ont laissé aucune alerte en attente sur Windows et 18 et 20 en attente sur Proton.
Les chiffres sont ceux du contributeur, rapportés sur le tracker de Valve et non vérifiés de manière indépendante, et le contributeur en tire une conclusion étroite : « Cela établit seulement que le premier retour qu’il atteint est le comportement de Wine, pas le comportement de Windows. » Le crash derrière le fil est une violation d’accès à Retail.exe+0x2158FEE sur le fil de chargement de fichiers du jeu, que le même contributeur a retracé via des minidumps et des journaux Proton attachés par d’autres propriétaires, sur la version de jeu 14.2 avec ntsync actif.
Les patchs Proton sont censés finir dans Wine
Proton est la fourche de Wine de Valve avec des composants supplémentaires boulonnés, donc un correctif qui ne vit que dans la fourche doit être reporté à chaque fois que la fourche rattrape l’amont. Le responsable de Valve a donné cela comme raison pour laquelle il a envoyé le travail à Wine en premier : « Au fil du temps, nous voulons que la différence entre Wine en amont et Proton diminue, afin que Proton reste maintenable. » La même traction technique s’applique également dans l’autre sens, avec Proton Experimental récupérant la première version ARM64 de Wine Mono en septembre.
La route en amont avait été empruntée avant que la réponse n’arrive. Le 27 septembre, le contributeur a déposé le côté Wine comme bug 60397, « avec l’analyse et l’approche de correction en prose », et a expliqué pourquoi il ne s’agissait pas d’un correctif : « C’est un rapport de bug plutôt qu’une demande de fusion parce que le prototype ci-dessus a été écrit avec un outil LLM, que les directives de salle blanche de Wine excluent des correctifs. » Un deuxième rapport, sur l’abandon du mutex sous ntsync, a suivi le 2 octobre sous le numéro de bug 60417.
Trois heures après la réponse du responsable, le contributeur a lu la règle plus attentivement : « J’ai lu les lignes directrices, les LLM sont uniquement interdits de contribution au code, ils ne sont pas interdits de discussion ou de diagnostic. »
Valve n’a publié aucune règle propre
Valve n’a pas de politique publique sur les contributions générées par LLM à Proton, n’a pas dit qu’elle les refuserait et n’a rien fusionné ici. Ce qu’il a fait, c’est pointer vers la règle de Wine, qui est la chose la plus proche d’une position donnée par la couche de compatibilité derrière SteamOS sur la question. Le même compte du responsable a défini les limites du tracker fin septembre, supprimant les solutions de contournement communautaires publiées sous Minecraft Dungeons II comme étant « juridiquement problématiques » avant d’en autoriser une.
L’entrée du tracker est ouverte depuis le 5 septembre 2024 et contenait 203 commentaires lorsqu’elle a été lue à 09h40 UTC le 6 octobre, le dernier d’entre eux étant publié à 04h09 UTC le même jour. Aucun compte Valve n’a répondu depuis le 3 octobre, et plusieurs propriétaires du fil de discussion rapportent avoir exécuté le prototype du contributeur pendant des heures sans rencontrer de crash.