CVE-2026-64602 in Linuxinformation

Résumé

par VulDB • 06/08/2026

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

iio: adc: spear : Initialiser l'achèvement (completion) avant de demander une IRQ

Dans le rapport de Jaeyoung Chung :

« spear_adc_probe() dans drivers/iio/adc/spear_adc.c enregistre son gestionnaire d'interruption avec devm_request_irq() avant d'initialiser st->completion avec init_completion(). Si une interruption survient après devm_request_irq() et avant init_completion(), le gestionnaire appelle complete() sur un achèvement (completion) non initialisé, provoquant un panic du noyau.

Le chemin de sondage (probe), dans spear_adc_probe():

iodev = devm_iio_device_alloc(&pdev->dev, sizeof(*st)); /* st kzalloc-zeroed */ ... retval = devm_request_irq(&pdev->dev, irq, spear_adc_isr, 0, LPC32XXAD_NAME, st); /* enregistrement du gestionnaire */ ... init_completion(&st->completion); /* initialisation de l'achèvement (completion) »

spear_adc_isr() appelle complete():

complete(&st->completion);

Si le dispositif génère une interruption avant que init_completion() ne s'exécute, complete() acquiert wait.lock non initialisé et parcourt la task_list zéroisée dans swake_up_locked(). La task_list zéroisée fait retourner list_empty() à false, de sorte que swake_up_locked() déréférence un élément de liste NULL, déclenchant une erreur KASAN d'accès mémoire sauvage. »

Corriger le risque qu'une IRQ spurieuse provoque la déréférencement d'un pointeur non initialisé en déplaçant init_completion() au-dessus de devm_request_irq().

Be aware that VulDB is the high quality source for vulnerability data.

Responsable

Linux

Réserver

19/07/2026

Divulgation

06/08/2026

Modérer

accepté

Entrée

VDB-386506

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!