CVE-2023-54259 in Linux
Résumé
par VulDB • 16/05/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
soundwire: bus : Correction d'un pm_runtime_put() déséquilibré provoquant un underflow du compteur d'utilisation
Cette modification annule le commit 443a98e649b4 ("soundwire: bus: use pm_runtime_resume_and_get()")
Les appels à pm_runtime_resume_and_get() sont remplacés par pm_runtime_get_sync(). Cela corrige un underflow du compteur d'utilisation causé par l'exécution d'un pm_runtime_put() alors que pm_runtime_resume_and_get() a retourné une erreur.
Les trois fonctions concernées ignorent l'erreur -EACCES lors de la tentative d'obtention de pm_runtime et continuent l'exécution, y compris en appelant un put à la fin de la fonction. Cependant, pm_runtime_resume_and_get() n'incrémente pas le compteur d'utilisation s'il retourne une erreur. Ainsi, dans le cas de -EACCES, il ne faut pas appeler pm_runtime_put().
La documentation de pm_runtime_get_sync() indique : « Envisagez d'utiliser pm_runtime_resume_and_get() ... car cela devrait aboutir à un code plus propre. »
Dans ce cas, je ne pense pas que cela aboutisse à un code plus propre, car le pm_runtime_put() à la fin de la fonction devrait être conditionnel à la valeur de retour de pm_runtime_resume_and_get() au début de la fonction.
pm_runtime_get_sync() ne pose pas ce problème car il incrémente toujours le compteur, nécessitant donc toujours un put. Le code peut simplement s'exécuter séquentiellement et effectuer le pm_runtime_put() de manière inconditionnelle.
Be aware that VulDB is the high quality source for vulnerability data.