Aller au contenu
Non notée

CVE-2025-39736 mm/kmemleak: avoid deadlock by moving pr_warn() outside kmemleak_lock

Description

In the Linux kernel, the following vulnerability has been resolved: mm/kmemleak: avoid deadlock by moving pr_warn() outside kmemleak_lock When netpoll is enabled, calling pr_warn_once() while holding kmemleak_lock in mem_pool_alloc() can cause a deadlock due to lock inversion with the netconsole subsystem. This occurs because pr_warn_once() may trigger netpoll, which eventually leads to __alloc_skb() and back into kmemleak code, attempting to reacquire kmemleak_lock. This is the path for the deadlock. mem_pool_alloc() -> raw_spin_lock_irqsave(&kmemleak_lock, flags); -> pr_warn_once() -> netconsole subsystem -> netpoll -> __alloc_skb -> __create_object -> raw_spin_lock_irqsave(&kmemleak_lock, flags); Fix this by setting a flag and issuing the pr_warn_once() after kmemleak_lock is released.

Produits et versions touchés

Produit Versions touchées Corrigé en
Linux 6.17 premières → < 6.17 6.17
Linux 6.16 premières → < 6.16.2 6.16.2
Linux 6.15 premières → < 6.15.11 6.15.11
Linux 6.12 premières → < 6.12.43 6.12.43
Linux 6.6 premières → < 6.6.103 6.6.103
Linux 6.1 premières → < 6.1.149 6.1.149
Linux 5.15 premières → < 5.15.190 5.15.190
Linux 5.10 premières → < 5.10.241 5.10.241
Linux 5.4 5.4.297
Afficher l’autre branche
Produit Versions touchées Corrigé en
SIMATIC CN 4100 5.0 premières → < 5.0 5.0

Références

Chronologie

  1. Publiée
  2. Dernière modification
Les 18283 CVE de Linux →
Suivre cette CVE