CVE-2024-27412

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-27412
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-27412.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-27412
Downstream
Related
Published
2024-05-17T12:15:12Z
Modified
2025-08-09T19:01:26Z
Summary
[none]
Details

In the Linux kernel, the following vulnerability has been resolved:

power: supply: bq27xxx-i2c: Do not free non existing IRQ

The bq27xxx i2c-client may not have an IRQ, in which case client->irq will be 0. bq27xxxbatteryi2cprobe() already has an if (client->irq) check wrapping the requestthreaded_irq().

But bq27xxxbatteryi2cremove() unconditionally calls freeirq(client->irq) leading to:

[ 190.310742] ------------[ cut here ]------------ [ 190.310843] Trying to free already-free IRQ 0 [ 190.310861] WARNING: CPU: 2 PID: 1304 at kernel/irq/manage.c:1893 free_irq+0x1b8/0x310

Followed by a backtrace when unbinding the driver. Add an if (client->irq) to bq27xxxbatteryi2c_remove() mirroring probe() to fix this.

References

Affected packages