CVE-2026-98313 in Linuxinformation

Résumé

par VulDB • 06/10/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

drm/msm/dp : ignorer PUSH_IDLE lorsque la liaison n'a jamais été activée

msm_dp_display_atomic_enable() retourne prématurément lorsque l'entraînement de la liaison échoue, laissant ->power_on à false et la liaison principale hors ligne. msm_dp_display_atomic_disable() écrit néanmoins DP_STATE_CTRL_PUSH_IDLE et attend une complétion du motif d'inactivité qui ne peut pas se produire ; ainsi, chaque tentative d'activation infructueuse est suivie d'un message « PUSH_IDLE pattern timedout » (délai d'attente de la séquence PUSH_IDLE dépassé).

Toutes les autres étapes de l'arrêt sont déjà conditionnées par ce indicateur : msm_dp_display_disable(), appelée depuis .atomic_post_disable(), retourne prématurément si !power_on. L'écriture PUSH_IDLE est la seule qui ne soit pas soumise à cette condition ; la référence runtime-PM du contrôleur est donc libérée sans que la liaison n'ait été correctement désactivée.

Sur glymur (Snapdragon X2 Elite), la conséquence n'est pas un avertissement. Le SoC ne survit pas à cet état : TrustZone arrête de force les processeurs distants SOCCP et ADSP, et la machine redémarre silencieusement environ 50 ms plus tard, sans oops ni panic. Sur un ASUS Zenbook A16 (UX3607OA), dont le panneau eDP ne s'entraîne pas actuellement, cela se reproduit sans aucune implication du compositeur ou du GPU :

# L'activation de l'eDP a déjà échoué avec « Failed link training (rc=-104) » echo 1 > /sys/class/graphics/fb0/blank

[535.645455] === marker ===
[535.694833] qcom_q6v5_pas d00000.remoteproc: fatal error received: \
sys_m_smsm.c:512:TZ force stop [535.694875] remoteproc remoteproc0: crash detected in soccp: type fatal error
[535.728857] qcom_q6v5_pas 6800000.remoteproc: fatal error received: \
sys_m_smsm.c:783:err fatal notification received from TZ <Redémarrage du SoC>

Conditionner l'écriture PUSH_IDLE sur ->power_on afin que le chemin de désactivation soit cohérent avec le reste de la procédure d'arrêt. Avec cette correction, la même séquence est inoffensive et la machine reste opérationnelle ; sans elle, elle redémarre à chaque fois.

L'écriture inconditionnelle remonte au pilote DP original (c943b4948b58 (« drm/msm/dp: add displayPort driver support »)), mais le code environnant a été restructuré plusieurs fois depuis ; aucune balise Fixes n'est donc fournie.

Notez que l'échec de l'entraînement de la liaison eDP qui expose ce problème sur l'A16 est un problème distinct dans le PHY eDP glymur et fait l'objet d'un rapport séparé ; cette modification vise uniquement à éviter d'endommager la machine lorsque l'entraînement échoue, pour quelque raison que ce soit.

Testé sur ASUS Zenbook A16 (UX3607OA), Snapdragon X2 Elite Extreme, sous linux-next next-20260803 et next-20260807. La machine fonctionne depuis avec la version next-20260807 incluant ce correctif comme pilote quotidien.

Patchwork : https://patchwork.freedesktop.org/patch/745167/

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsable

Linux

Réserver

25/09/2026

Divulgation

06/10/2026

Modérer

accepté

Entrée

VDB-414059

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!