Vulnerabilidad en kernel de Linux (CVE-2025-38335)
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
10/07/2025
Última modificación:
10/07/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: Entrada: gpio-keys - corrige un fallo de suspensión mientras es atómico con PREEMPT_RT Al habilitar PREEMPT_RT, la devolución de llamada gpio_keys_irq_timer() se ejecuta en un contexto de irq duro, pero input_event() toma un spin_lock, que no está permitido allí ya que se convierte en un rt_spin_lock(). [ 4054.289999] ERROR: función de suspensión llamada desde un contexto no válido en kernel/locking/spinlock_rt.c:48 [ 4054.290028] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 0, name: swapper/0 ... [ 4054.290195] __might_resched+0x13c/0x1f4 [ 4054.290209] rt_spin_lock+0x54/0x11c [ 4054.290219] input_event+0x48/0x80 [ 4054.290230] gpio_keys_irq_timer+0x4c/0x78 [ 4054.290243] __hrtimer_run_queues+0x1a4/0x438 [ 4054.290257] hrtimer_interrupt+0xe4/0x240 [ 4054.290269] arch_timer_handler_phys+0x2c/0x44 [ 4054.290283] handle_percpu_devid_irq+0x8c/0x14c [ 4054.290297] handle_irq_desc+0x40/0x58 [ 4054.290307] generic_handle_domain_irq+0x1c/0x28 [ 4054.290316] gic_handle_irq+0x44/0xcc Teniendo en cuenta que gpio_keys_irq_isr() puede ejecutarse en cualquier contexto, por ejemplo, puede ser Enhebrado, parece que no tiene sentido solicitar que el temporizador ISR se ejecute en un contexto de IRQ estricto. Reduzca la velocidad del temporizador hr para que no use dicho contexto.