CVE-2022-50100

In the Linux kernel, the following vulnerability has been resolved: sched/core: Do not requeue task on CPU excluded from cpus_mask The following warning was triggered on a large machine early in boot on a distribution kernel but the same problem should also affect mainline. WARNING: CPU: 439 PID: 10 at ../kernel/workqueue.c:2231 process_one_work+0x4d/0x440 Call Trace: <TASK> rescuer_thread+0x1f6/0x360 kthread+0x156/0x180 ret_from_fork+0x22/0x30 </TASK> Commit c6e7bd7afaeb ("sched/core: Optimize ttwu() spinning on p->on_cpu") optimises ttwu by queueing a task that is descheduling on the wakelist, but does not check if the task descheduling is still allowed to run on that CPU. In this warning, the problematic task is a workqueue rescue thread which checks if the rescue is for a per-cpu workqueue and running on the wrong CPU. While this is early in boot and it should be possible to create workers, the rescue thread may still used if the MAYDAY_INITIAL_TIMEOUT is reached or MAYDAY_INTERVAL and on a sufficiently large machine, the rescue thread is being used frequently. Tracing confirmed that the task should have migrated properly using the stopper thread to handle the migration. However, a parallel wakeup from udev running on another CPU that does not share CPU cache observes p->on_cpu and uses task_cpu(p), queues the task on the old CPU and triggers the warning. Check that the wakee task that is descheduling is still allowed to run on its current CPU and if not, wait for the descheduling to complete and select an allowed CPU.
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:*:*:*:*:*:*:*:*

History

19 Nov 2025, 13:55

Type Values Removed Values Added
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
References () https://git.kernel.org/stable/c/302f7b0fc337746f41c69eb08522907f6a90c643 - () https://git.kernel.org/stable/c/302f7b0fc337746f41c69eb08522907f6a90c643 - Patch
References () https://git.kernel.org/stable/c/748d2e9585ae53cb6be48e84f93d2f082ae1d135 - () https://git.kernel.org/stable/c/748d2e9585ae53cb6be48e84f93d2f082ae1d135 - Patch
References () https://git.kernel.org/stable/c/751d4cbc43879229dbc124afefe240b70fd29a85 - () https://git.kernel.org/stable/c/751d4cbc43879229dbc124afefe240b70fd29a85 - Patch
References () https://git.kernel.org/stable/c/fde45283f4c8a91c367ea5f20f87036468755121 - () https://git.kernel.org/stable/c/fde45283f4c8a91c367ea5f20f87036468755121 - Patch
CWE NVD-CWE-noinfo
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
First Time Linux
Linux linux Kernel
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: sched/core: No volver a poner en cola la tarea en la CPU excluida de cpus_mask La siguiente advertencia se activó en una máquina grande al comienzo del arranque en un kernel de distribución, pero el mismo problema también debería afectar a la línea principal. ADVERTENCIA: CPU: 439 PID: 10 en ../kernel/workqueue.c:2231 process_one_work+0x4d/0x440 Rastreo de llamadas: rescuer_thread+0x1f6/0x360 kthread+0x156/0x180 ret_from_fork+0x22/0x30 el commit c6e7bd7afaeb ("sched/core: Optimize ttwu() spinning on p-&gt;on_cpu") optimiza ttwu poniendo en cola una tarea que se está desprogramando en la lista de activación, pero no comprueba si la desprogramación de tareas aún puede ejecutarse en esa CPU. En esta advertencia, la tarea problemática es un subproceso de rescate de la cola de trabajo que comprueba si el rescate es para una cola de trabajo por CPU y se ejecuta en la CPU incorrecta. Aunque esto ocurre al principio del arranque y debería ser posible crear trabajadores, el hilo de rescate aún podría usarse si se alcanza el tiempo de espera inicial (MAYDAY_INITIAL_TIMEOUT) o el intervalo (MAYDAY_INTERVAL) y, en una máquina lo suficientemente grande, se usa con frecuencia. El seguimiento confirmó que la tarea debería haberse migrado correctamente utilizando el hilo de parada para gestionar la migración. Sin embargo, una activación paralela de udev, ejecutándose en otra CPU que no comparte caché de CPU, observa p-&gt;on_cpu y utiliza task_cpu(p), pone la tarea en cola en la CPU anterior y activa la advertencia. Compruebe que la tarea de activación que se está desprogramando aún pueda ejecutarse en su CPU actual; de no ser así, espere a que se complete la desprogramación y seleccione una CPU permitida.

18 Jun 2025, 11:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-06-18 11:15

Updated : 2025-11-19 13:55


NVD link : CVE-2022-50100

Mitre link : CVE-2022-50100

CVE.ORG link : CVE-2022-50100


JSON object : View

Products Affected

linux

  • linux_kernel