CVE-2025-39899 in Linux
Résumé
par VulDB • 22/05/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
mm/userfaultfd : correction de l'ordre LIFO de kmap_local pour CONFIG_HIGHPTE
Avec CONFIG_HIGHPTE activé sur ARM 32 bits, move_pages_pte() mappe les pages PTE en utilisant kmap_local_page(), ce qui nécessite un démapage dans un ordre Last-In-First-Out (LIFO).
Le code actuel mappe dst_pte en premier, puis src_pte, mais les démapte dans le même ordre (dst_pte, src_pte), violant ainsi l'exigence LIFO. Cela provoque l'avertissement dans kunmap_local_indexed() :
WARNING: CPU: 0 PID: 604 at mm/highmem.c:622 kunmap_local_indexed+0x178/0x17c addr != __fix_to_virt(FIX_KMAP_BEGIN + idx)
Corrigez ce problème en inversant l'ordre de démapage pour respecter l'ordre LIFO.
Ce problème suit le même schéma que des correctifs similaires : - commit eca6828403b8 ("crypto: skcipher - fix mismatch between mapping and unmapping order") - commit 8cf57c6df818 ("nilfs2: eliminate staggered calls to kunmap in nilfs_rename")
Les deux ont adressé la même exigence fondamentale selon laquelle les opérations kmap_local doivent suivre un ordre LIFO.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.