CVE-2022-49511

In the Linux kernel, the following vulnerability has been resolved: fbdev: defio: fix the pagelist corruption Easily hit the below list corruption: == list_add corruption. prev->next should be next (ffffffffc0ceb090), but was ffffec604507edc8. (prev=ffffec604507edc8). WARNING: CPU: 65 PID: 3959 at lib/list_debug.c:26 __list_add_valid+0x53/0x80 CPU: 65 PID: 3959 Comm: fbdev Tainted: G U RIP: 0010:__list_add_valid+0x53/0x80 Call Trace: <TASK> fb_deferred_io_mkwrite+0xea/0x150 do_page_mkwrite+0x57/0xc0 do_wp_page+0x278/0x2f0 __handle_mm_fault+0xdc2/0x1590 handle_mm_fault+0xdd/0x2c0 do_user_addr_fault+0x1d3/0x650 exc_page_fault+0x77/0x180 ? asm_exc_page_fault+0x8/0x30 asm_exc_page_fault+0x1e/0x30 RIP: 0033:0x7fd98fc8fad1 == Figure out the race happens when one process is adding &page->lru into the pagelist tail in fb_deferred_io_mkwrite(), another process is re-initializing the same &page->lru in fb_deferred_io_fault(), which is not protected by the lock. This fix is to init all the page lists one time during initialization, it not only fixes the list corruption, but also avoids INIT_LIST_HEAD() redundantly. V2: change "int i" to "unsigned int i" (Geert Uytterhoeven)
Configurations

Configuration 1 (hide)

cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

21 Oct 2025, 12:09

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: fbdev: defio: corrige la corrupción de la lista de páginas. Fácilmente se llega a la siguiente corrupción de lista: == list_add corruption. prev-&gt;next should be next (ffffffffc0ceb090), but was ffffec604507edc8. (prev=ffffec604507edc8). WARNING: CPU: 65 PID: 3959 at lib/list_debug.c:26 __list_add_valid+0x53/0x80 CPU: 65 PID: 3959 Comm: fbdev Tainted: G U RIP: 0010:__list_add_valid+0x53/0x80 Call Trace: fb_deferred_io_mkwrite+0xea/0x150 do_page_mkwrite+0x57/0xc0 do_wp_page+0x278/0x2f0 __handle_mm_fault+0xdc2/0x1590 handle_mm_fault+0xdd/0x2c0 do_user_addr_fault+0x1d3/0x650 exc_page_fault+0x77/0x180 ? asm_exc_page_fault+0x8/0x30 asm_exc_page_fault+0x1e/0x30 RIP: 0033:0x7fd98fc8fad1 == Averigüe que la ejecución ocurre cuando un proceso agrega &amp;page-&gt;lru a la cola de la lista de páginas en fb_deferred_io_mkwrite(), otro proceso está reinicializando la misma &amp;page-&gt;lru en fb_deferred_io_fault(), que no está protegida por el bloqueo. Esta solución consiste en inicializar todas las listas de páginas una vez durante la inicialización, no solo corrige la corrupción de la lista, sino que también evita que INIT_LIST_HEAD() se ejecute de manera redundante. V2: cambie "int i" por "unsigned int i" (Geert Uytterhoeven)
CWE NVD-CWE-noinfo
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
First Time Linux
Linux linux Kernel
References () https://git.kernel.org/stable/c/6a9ae2fe887042f76fd3d334349e64e8ab3c55a2 - () https://git.kernel.org/stable/c/6a9ae2fe887042f76fd3d334349e64e8ab3c55a2 - Patch
References () https://git.kernel.org/stable/c/856082f021a28221db2c32bd0531614a8382be67 - () https://git.kernel.org/stable/c/856082f021a28221db2c32bd0531614a8382be67 - Patch
References () https://git.kernel.org/stable/c/e79b2b2aadeffe1db54a6b569b9b621575c3eb07 - () https://git.kernel.org/stable/c/e79b2b2aadeffe1db54a6b569b9b621575c3eb07 - Patch

26 Feb 2025, 07:01

Type Values Removed Values Added
New CVE

Information

Published : 2025-02-26 07:01

Updated : 2025-10-21 12:09


NVD link : CVE-2022-49511

Mitre link : CVE-2022-49511

CVE.ORG link : CVE-2022-49511


JSON object : View

Products Affected

linux

  • linux_kernel