{"id":"DEBIAN-CVE-2023-53166","details":"In the Linux kernel, the following vulnerability has been resolved:  power: supply: bq25890: Fix external_power_changed race  bq25890_charger_external_power_changed() dereferences bq-\u003echarger, which gets sets in bq25890_power_supply_init() like this:    bq-\u003echarger = devm_power_supply_register(bq-\u003edev, &bq-\u003edesc, &psy_cfg);  As soon as devm_power_supply_register() has called device_add() the external_power_changed callback can get called. So there is a window where bq25890_charger_external_power_changed() may get called while bq-\u003echarger has not been set yet leading to a NULL pointer dereference.  This race hits during boot sometimes on a Lenovo Yoga Book 1 yb1-x90f when the cht_wcove_pwrsrc (extcon) power_supply is done with detecting the connected charger-type which happens to exactly hit the small window:    BUG: kernel NULL pointer dereference, address: 0000000000000018   \u003csnip\u003e   RIP: 0010:__power_supply_is_supplied_by+0xb/0xb0   \u003csnip\u003e   Call Trace:    \u003cTASK\u003e    __power_supply_get_supplier_property+0x19/0x50    class_for_each_device+0xb1/0xe0    power_supply_get_property_from_supplier+0x2e/0x50    bq25890_charger_external_power_changed+0x38/0x1b0 [bq25890_charger]    __power_supply_changed_work+0x30/0x40    class_for_each_device+0xb1/0xe0    power_supply_changed_work+0x5f/0xe0   \u003csnip\u003e  Fixing this is easy. The external_power_changed callback gets passed the power_supply which will eventually get stored in bq-\u003echarger, so bq25890_charger_external_power_changed() can simply directly use the passed in psy argument which is always valid.","modified":"2026-09-15T09:02:54.430213645Z","published":"2025-09-15T14:15:38.343Z","upstream":["CVE-2023-53166"],"references":[{"type":"ADVISORY","url":"https://security-tracker.debian.org/tracker/CVE-2023-53166"}],"affected":[{"package":{"name":"linux","ecosystem":"Debian:12","purl":"pkg:deb/debian/linux?arch=source&distro=bookworm"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.1.37-1"}]}],"versions":["6.1.27-1"],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2023-53166.json"}},{"package":{"name":"linux","ecosystem":"Debian:13","purl":"pkg:deb/debian/linux?arch=source&distro=trixie"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.3.7-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2023-53166.json"}},{"package":{"name":"linux","ecosystem":"Debian:14","purl":"pkg:deb/debian/linux?arch=source&distro=forky"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.3.7-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2023-53166.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H"}]}