CVE-2022-49379

In the Linux kernel, the following vulnerability has been resolved: driver core: Fix wait_for_device_probe() & deferred_probe_timeout interaction Mounting NFS rootfs was timing out when deferred_probe_timeout was non-zero [1]. This was because ip_auto_config() initcall times out waiting for the network interfaces to show up when deferred_probe_timeout was non-zero. While ip_auto_config() calls wait_for_device_probe() to make sure any currently running deferred probe work or asynchronous probe finishes, that wasn't sufficient to account for devices being deferred until deferred_probe_timeout. Commit 35a672363ab3 ("driver core: Ensure wait_for_device_probe() waits until the deferred_probe_timeout fires") tried to fix that by making sure wait_for_device_probe() waits for deferred_probe_timeout to expire before returning. However, if wait_for_device_probe() is called from the kernel_init() context: - Before deferred_probe_initcall() [2], it causes the boot process to hang due to a deadlock. - After deferred_probe_initcall() [3], it blocks kernel_init() from continuing till deferred_probe_timeout expires and beats the point of deferred_probe_timeout that's trying to wait for userspace to load modules. Neither of this is good. So revert the changes to wait_for_device_probe(). [1] - https://lore.kernel.org/lkml/TYAPR01MB45443DF63B9EF29054F7C41FD8C60@TYAPR01MB4544.jpnprd01.prod.outlook.com/ [2] - https://lore.kernel.org/lkml/YowHNo4sBjr9ijZr@dev-arch.thelio-3990X/ [3] - https://lore.kernel.org/lkml/Yo3WvGnNk3LvLb7R@linutronix.de/
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:rc7:*:*:*:*:*:*

History

22 Sep 2025, 20:29

Type Values Removed Values Added
First Time Linux
Linux linux Kernel
CWE CWE-667
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
CPE cpe:2.3:o:linux:linux_kernel:5.7:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.7:rc7:*:*:*:*:*:*
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: núcleo del controlador: se corrige la interacción wait_for_device_probe() y deferred_probe_timeout El montaje de rootfs NFS se agotaba cuando deferred_probe_timeout no era cero [1]. Esto se debía a que la llamada de inicio ip_auto_config() agotaba el tiempo de espera a que aparecieran las interfaces de red cuando deferred_probe_timeout no era cero. Si bien ip_auto_config() llama a wait_for_device_probe() para asegurarse de que cualquier sonda diferida que se esté ejecutando actualmente funcione o la sonda asincrónica finalice, eso no era suficiente para explicar los dispositivos que se aplazaban hasta deferred_probe_timeout. El commit 35a672363ab3 ("driver core: Ensure wait_for_device_probe() waits Until the deferred_probe_timeout fires") intentó solucionar eso asegurándose de que wait_for_device_probe() espere a que deferred_probe_timeout expire antes de regresar. Sin embargo, si wait_for_device_probe() se llama desde el contexto kernel_init(): - Antes de deferred_probe_initcall() [2], hace que el proceso de arranque se cuelgue debido a un punto muerto. - Después de deferred_probe_initcall() [3], impide que kernel_init() continúe hasta que deferred_probe_timeout expire y supere el punto de deferred_probe_timeout que está tratando de esperar a que el espacio de usuario cargue módulos. Ninguna de estas opciones es buena. Por lo tanto, revierta los cambios a wait_for_device_probe(). [1] - https://lore.kernel.org/lkml/TYAPR01MB45443DF63B9EF29054F7C41FD8C60@TYAPR01MB4544.jpnprd01.prod.outlook.com/ [2] - https://lore.kernel.org/lkml/YowHNo4sBjr9ijZr@dev-arch.thelio-3990X/ [3] - https://lore.kernel.org/lkml/Yo3WvGnNk3LvLb7R@linutronix.de/
References () https://git.kernel.org/stable/c/29357883a89193863f3cc6a2c5e0b42ceb022761 - () https://git.kernel.org/stable/c/29357883a89193863f3cc6a2c5e0b42ceb022761 - Patch
References () https://git.kernel.org/stable/c/4ad6af07efcca85369c21e4897b3020cff2c170b - () https://git.kernel.org/stable/c/4ad6af07efcca85369c21e4897b3020cff2c170b - Patch
References () https://git.kernel.org/stable/c/528229474e1cbb1b3451cb713d94aecb5f6ee264 - () https://git.kernel.org/stable/c/528229474e1cbb1b3451cb713d94aecb5f6ee264 - Patch
References () https://git.kernel.org/stable/c/5ee76c256e928455212ab759c51d198fedbe7523 - () https://git.kernel.org/stable/c/5ee76c256e928455212ab759c51d198fedbe7523 - Patch
References () https://git.kernel.org/stable/c/71cbce75031aed26c72c2dc8a83111d181685f1b - () https://git.kernel.org/stable/c/71cbce75031aed26c72c2dc8a83111d181685f1b - Patch

26 Feb 2025, 07:01

Type Values Removed Values Added
New CVE

Information

Published : 2025-02-26 07:01

Updated : 2025-09-22 20:29


NVD link : CVE-2022-49379

Mitre link : CVE-2022-49379

CVE.ORG link : CVE-2022-49379


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-667

Improper Locking