fkie_cve-2025-21645
Vulnerability from fkie_nvd
Published
2025-01-19 11:15
Modified
2025-01-19 11:15
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
platform/x86/amd/pmc: Only disable IRQ1 wakeup where i8042 actually enabled it
Wakeup for IRQ1 should be disabled only in cases where i8042 had
actually enabled it, otherwise "wake_depth" for this IRQ will try to
drop below zero and there will be an unpleasant WARN() logged:
kernel: atkbd serio0: Disabling IRQ1 wakeup source to avoid platform firmware bug
kernel: ------------[ cut here ]------------
kernel: Unbalanced IRQ 1 wake disable
kernel: WARNING: CPU: 10 PID: 6431 at kernel/irq/manage.c:920 irq_set_irq_wake+0x147/0x1a0
The PMC driver uses DEFINE_SIMPLE_DEV_PM_OPS() to define its dev_pm_ops
which sets amd_pmc_suspend_handler() to the .suspend, .freeze, and
.poweroff handlers. i8042_pm_suspend(), however, is only set as
the .suspend handler.
Fix the issue by call PMC suspend handler only from the same set of
dev_pm_ops handlers as i8042_pm_suspend(), which currently means just
the .suspend handler.
To reproduce this issue try hibernating (S4) the machine after a fresh boot
without putting it into s2idle first.
[ij: edited the commit message.]
References
Impacted products
Vendor | Product | Version |
---|
{ "cveTags": [], "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nplatform/x86/amd/pmc: Only disable IRQ1 wakeup where i8042 actually enabled it\n\nWakeup for IRQ1 should be disabled only in cases where i8042 had\nactually enabled it, otherwise \"wake_depth\" for this IRQ will try to\ndrop below zero and there will be an unpleasant WARN() logged:\n\nkernel: atkbd serio0: Disabling IRQ1 wakeup source to avoid platform firmware bug\nkernel: ------------[ cut here ]------------\nkernel: Unbalanced IRQ 1 wake disable\nkernel: WARNING: CPU: 10 PID: 6431 at kernel/irq/manage.c:920 irq_set_irq_wake+0x147/0x1a0\n\nThe PMC driver uses DEFINE_SIMPLE_DEV_PM_OPS() to define its dev_pm_ops\nwhich sets amd_pmc_suspend_handler() to the .suspend, .freeze, and\n.poweroff handlers. i8042_pm_suspend(), however, is only set as\nthe .suspend handler.\n\nFix the issue by call PMC suspend handler only from the same set of\ndev_pm_ops handlers as i8042_pm_suspend(), which currently means just\nthe .suspend handler.\n\nTo reproduce this issue try hibernating (S4) the machine after a fresh boot\nwithout putting it into s2idle first.\n\n[ij: edited the commit message.]" }, { "lang": "es", "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: platform/x86/amd/pmc: Solo deshabilitar la activaci\u00f3n de IRQ1 donde i8042 realmente la habilit\u00f3 La activaci\u00f3n para IRQ1 debe deshabilitarse solo en los casos en que i8042 realmente la haya habilitado, de lo contrario, \"wake_depth\" para esta IRQ intentar\u00e1 caer por debajo de cero y se registrar\u00e1 un WARN() desagradable: kernel: atkbd serio0: Deshabilitar la fuente de activaci\u00f3n de IRQ1 para evitar un error de firmware de la plataforma kernel: ------------[ cortar aqu\u00ed ]------------ kernel: Deshabilitar activaci\u00f3n de IRQ 1 no balanceada kernel: ADVERTENCIA: CPU: 10 PID: 6431 en kernel/irq/manage.c:920 irq_set_irq_wake+0x147/0x1a0 El controlador PMC usa DEFINE_SIMPLE_DEV_PM_OPS() para definir su dev_pm_ops que establece amd_pmc_suspend_handler() en .suspend, .freeze y .poweroff. Sin embargo, i8042_pm_suspend() solo se configura como el controlador .suspend. Solucione el problema llamando al controlador de suspensi\u00f3n PMC solo desde el mismo conjunto de controladores dev_pm_ops que i8042_pm_suspend(), lo que actualmente significa solo el controlador .suspend. Para reproducir este problema, intente hibernar (S4) la m\u00e1quina despu\u00e9s de un arranque nuevo sin ponerla primero en s2idle. [ij: edit\u00e9 el mensaje de confirmaci\u00f3n]." } ], "id": "CVE-2025-21645", "lastModified": "2025-01-19T11:15:10.090", "metrics": {}, "published": "2025-01-19T11:15:10.090", "references": [ { "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "url": "https://git.kernel.org/stable/c/5cc621085e2b7a9b1905a98f8e5a86bb4aea2016" }, { "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "url": "https://git.kernel.org/stable/c/b25778c87a6bce40c31e92364f08aa6240309e25" }, { "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "url": "https://git.kernel.org/stable/c/dd410d784402c5775f66faf8b624e85e41c38aaf" } ], "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "vulnStatus": "Awaiting Analysis" }
Loading…
Loading…
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.