CVE-2025-38624

In the Linux kernel, the following vulnerability has been resolved: PCI: pnv_php: Clean up allocated IRQs on unplug When the root of a nested PCIe bridge configuration is unplugged, the pnv_php driver leaked the allocated IRQ resources for the child bridges' hotplug event notifications, resulting in a panic. Fix this by walking all child buses and deallocating all its IRQ resources before calling pci_hp_remove_devices(). Also modify the lifetime of the workqueue at struct pnv_php_slot::wq so that it is only destroyed in pnv_php_free_slot(), instead of pnv_php_disable_irq(). This is required since pnv_php_disable_irq() will now be called by workers triggered by hot unplug interrupts, so the workqueue needs to stay allocated. The abridged kernel panic that occurs without this patch is as follows: WARNING: CPU: 0 PID: 687 at kernel/irq/msi.c:292 msi_device_data_release+0x6c/0x9c CPU: 0 UID: 0 PID: 687 Comm: bash Not tainted 6.14.0-rc5+ #2 Call Trace: msi_device_data_release+0x34/0x9c (unreliable) release_nodes+0x64/0x13c devres_release_all+0xc0/0x140 device_del+0x2d4/0x46c pci_destroy_dev+0x5c/0x194 pci_hp_remove_devices+0x90/0x128 pci_hp_remove_devices+0x44/0x128 pnv_php_disable_slot+0x54/0xd4 power_write_file+0xf8/0x18c pci_slot_attr_store+0x40/0x5c sysfs_kf_write+0x64/0x78 kernfs_fop_write_iter+0x1b0/0x290 vfs_write+0x3bc/0x50c ksys_write+0x84/0x140 system_call_exception+0x124/0x230 system_call_vectored_common+0x15c/0x2ec [bhelgaas: tidy comments]
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:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

Configuration 2 (hide)

cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*

History

07 Jan 2026, 16:37

Type Values Removed Values Added
CWE NVD-CWE-noinfo
References () https://git.kernel.org/stable/c/1773c19fa55e944cdd2634e2d9e552f87f2d38d5 - () https://git.kernel.org/stable/c/1773c19fa55e944cdd2634e2d9e552f87f2d38d5 - Patch
References () https://git.kernel.org/stable/c/28aa3cfce12487614219e7667ec84424e1f43227 - () https://git.kernel.org/stable/c/28aa3cfce12487614219e7667ec84424e1f43227 - Patch
References () https://git.kernel.org/stable/c/32173edf3fe2d447e14e5e3b299387c6f9602a88 - () https://git.kernel.org/stable/c/32173edf3fe2d447e14e5e3b299387c6f9602a88 - Patch
References () https://git.kernel.org/stable/c/398170b7fd0e0db2f8096df5206c75e5ff41415a - () https://git.kernel.org/stable/c/398170b7fd0e0db2f8096df5206c75e5ff41415a - Patch
References () https://git.kernel.org/stable/c/4668619092554e1b95c9a5ac2941ca47ba6d548a - () https://git.kernel.org/stable/c/4668619092554e1b95c9a5ac2941ca47ba6d548a - Patch
References () https://git.kernel.org/stable/c/8c1ad4af160691e157d688ad9619ced2df556aac - () https://git.kernel.org/stable/c/8c1ad4af160691e157d688ad9619ced2df556aac - Patch
References () https://git.kernel.org/stable/c/912e200240b6f9758f0b126e64a61c9227f4ad37 - () https://git.kernel.org/stable/c/912e200240b6f9758f0b126e64a61c9227f4ad37 - Patch
References () https://git.kernel.org/stable/c/bbd302c4b79df10197ffa7270ca3aa572eeca33c - () https://git.kernel.org/stable/c/bbd302c4b79df10197ffa7270ca3aa572eeca33c - Patch
References () https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html - () https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html - Third Party Advisory
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
First Time Linux
Debian
Debian debian Linux
Linux linux Kernel
CPE cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

03 Nov 2025, 18:16

Type Values Removed Values Added
References
  • () https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html -

28 Aug 2025, 15:15

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: PCI: pnv_php: Limpiar las IRQ asignadas al desconectar Cuando se desconecta la raíz de una configuración de puente PCIe anidada, el controlador pnv_php filtró los recursos IRQ asignados para las notificaciones de eventos de conexión en caliente de los puentes secundarios, lo que resultó en un pánico. Corrija esto recorriendo todos los buses secundarios y desasignando todos sus recursos IRQ antes de llamar a pci_hp_remove_devices(). También modifique el tiempo de vida de la cola de trabajo en struct pnv_php_slot::wq para que solo se destruya en pnv_php_free_slot(), en lugar de pnv_php_disable_irq(). Esto es necesario ya que pnv_php_disable_irq() ahora será llamado por trabajadores activados por interrupciones de desconexión en caliente, por lo que la cola de trabajo debe permanecer asignada. El pánico del kernel abreviado que ocurre sin este parche es el siguiente: ADVERTENCIA: CPU: 0 PID: 687 en kernel/irq/msi.c:292 msi_device_data_release+0x6c/0x9c CPU: 0 UID: 0 PID: 687 Comm: bash No contaminado 6.14.0-rc5+ #2 Seguimiento de llamadas: msi_device_data_release+0x34/0x9c (no confiable) release_nodes+0x64/0x13c devres_release_all+0xc0/0x140 device_del+0x2d4/0x46c pci_destroy_dev+0x5c/0x194 pci_hp_remove_devices+0x90/0x128 pci_hp_remove_devices+0x44/0x128 pnv_php_disable_slot+0x54/0xd4 power_write_file+0xf8/0x18c pci_ranura_attr_store+0x40/0x5c sysfs_kf_write+0x64/0x78 kernfs_fop_write_iter+0x1b0/0x290 vfs_write+0x3bc/0x50c ksys_write+0x84/0x140 system_call_exception+0x124/0x230 system_call_vectored_common+0x15c/0x2ec [bhelgaas: comentarios ordenados]
References
  • () https://git.kernel.org/stable/c/8c1ad4af160691e157d688ad9619ced2df556aac -
  • () https://git.kernel.org/stable/c/912e200240b6f9758f0b126e64a61c9227f4ad37 -

22 Aug 2025, 16:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-08-22 16:15

Updated : 2026-01-07 16:37


NVD link : CVE-2025-38624

Mitre link : CVE-2025-38624

CVE.ORG link : CVE-2025-38624


JSON object : View

Products Affected

debian

  • debian_linux

linux

  • linux_kernel