CVEvulnerability

CVE-2024-27412

5.5 MEDIUM Published 2024-05-17 Modified 2026-06-17 Official page ↗
Status
Analyzed
Published
2024-05-17
Last modified
2026-06-17
Assigner
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS 3.1 ([email protected])
5.5 MEDIUM — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 3.1 (134c704f-9b21-4f2e-91b3-4a467353bcc0)
5.5 MEDIUM — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Description

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. bq27xxx_battery_i2c_probe() already has an if (client->irq) check wrapping the request_threaded_irq(). But bq27xxx_battery_i2c_remove() unconditionally calls free_irq(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 bq27xxx_battery_i2c_remove() mirroring probe() to fix this.

Affected configurations

• linux linux kernel (>= 4.14.316 < 4.15) • linux linux kernel (>= 4.19.284 < 4.19.309) • linux linux kernel (>= 5.4.244 < 5.4.271) • linux linux kernel (>= 5.10.181 < 5.10.212) • linux linux kernel (>= 5.15.114 < 5.15.151) • linux linux kernel (>= 6.1.31 < 6.1.81) • linux linux kernel (>= 6.3.5 < 6.4) • linux linux kernel (>= 6.4.1 < 6.6.21) • linux linux kernel (>= 6.7 < 6.7.9) • linux linux kernel 6.4 • linux linux kernel 6.8 • debian debian linux 10.0

References