CVE-2023-54079
Race Condition in Linux bq27xxx Battery Driver on Removal
Publication date: 2025-12-24
Last updated on: 2025-12-24
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| ti | bq27xxx | * |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability involves the Linux kernel's bq27xxx power supply driver. The issue is related to how the driver handles the poll_interval parameter and races during device removal. Specifically, before the fix, setting poll_interval to 0 in bq27xxx_battery_teardown() to prevent requeuing of delayed work caused unexpected changes if the driver was unbound via sysfs instead of being removed as a module. Additionally, there were race conditions where poll_interval could be changed concurrently, and the device removal process did not properly handle the removal from the device list before cancelling delayed work, leading to potential requeuing issues. The fix involved adding a removed attribute to track device removal and adjusting the order of operations during device removal to prevent these races.
How can this vulnerability impact me? :
This vulnerability can cause unexpected behavior in the power supply driver, such as race conditions and improper handling of delayed work items during device removal. This may lead to instability or incorrect operation of battery monitoring or management on affected devices using the bq27xxx driver. While it does not directly indicate security exploitation, the race conditions and improper state handling could potentially cause system instability or unexpected behavior in power management.