CVE-2024-27412
Assigner: Linux
Published: 2024-05-17T11:50:50.323Z
State: PUBLISHED
descriptions: value: 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: product: Linux
vendor: Linux
defaultStatus: unaffected
repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
versions: version: 76d2ed844def
lessThan: d4d813c0a14d
status: affected
versionType: git
version: dafe9136be7b
lessThan: 7394abc8926a
status: affected
versionType: git
version: 1da9a4b55a66
lessThan: d7acc4a569f5
status: affected
versionType: git
version: e01820a94aea
lessThan: e601ae81910c
status: affected
versionType: git
version: e65fee45687f
lessThan: cefe18e9ec84
status: affected
versionType: git
version: 444ff00734f3
lessThan: fbca8bae1ba7
status: affected
versionType: git
version: 444ff00734f3
lessThan: 083686474e7c
status: affected
versionType: git
version: 444ff00734f3
lessThan: 2df70149e73e
status: affected
versionType: git
product: Linux
vendor: Linux
defaultStatus: affected
repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
versions: version: 6.4
status: affected
version: 0
lessThan: 6.4
status: unaffected
versionType: custom
version: 4.19.309
lessThanOrEqual: 4.19.*
status: unaffected
versionType: custom
version: 5.4.271
lessThanOrEqual: 5.4.*
status: unaffected
versionType: custom
version: 5.10.212
lessThanOrEqual: 5.10.*
status: unaffected
versionType: custom
version: 5.15.151
lessThanOrEqual: 5.15.*
status: unaffected
versionType: custom
version: 6.1.81
lessThanOrEqual: 6.1.*
status: unaffected
versionType: custom
version: 6.6.21
lessThanOrEqual: 6.6.*
status: unaffected
versionType: custom
version: 6.7.9
lessThanOrEqual: 6.7.*
status: unaffected
versionType: custom
version: 6.8
lessThanOrEqual: *
status: unaffected
versionType: original_commit_for_fix
title: power: supply: bq27xxx-i2c: Do not free non existing IRQ
x_generator: engine: bippy-d175d3acf727