{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2026-89475", "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "state": "PUBLISHED", "assignerShortName": "Linux", "dateReserved": "2026-09-11T19:38:34.710Z", "datePublished": "2026-09-11T19:43:32.537Z", "dateUpdated": "2026-10-19T08:47:24.173Z" }, "containers": { "cna": { "providerMetadata": { "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux", "dateUpdated": "2026-10-19T08:47:24.173Z" }, "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\npower: supply: bq24257: fix use-after-free on remove\n\nThe STAT-pin interrupt is devm-managed, so it stays armed until the devm\ncleanup that runs after remove() returns. remove() cancels\nbq->iilimit_setup_work while the threaded handler can still fire; that\nhandler reschedules the work and dereferences bq, so the work runs\nagainst freed memory once devm frees bq.\n\nMake the delayed work device-managed with devm_delayed_work_autocancel(),\nregistered before the interrupt request. The devm cleanup then releases\nthe interrupt first, so the handler can no longer reschedule the work,\nand cancels the work before bq is freed. The explicit\ncancel_delayed_work_sync() in remove() is no longer needed and is dropped.\n\nFound by static analysis." } ], "affected": [ { "product": "Linux", "vendor": "Linux", "defaultStatus": "unaffected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/power/supply/bq24257_charger.c" ], "versions": [ { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "9d77fd7dd9a3ad57f7655c5264b503b85adbb7b8", "status": "affected", "versionType": "git" }, { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "a279e64c907f5638bb34cb8e2c9285798cf5f690", "status": "affected", "versionType": "git" }, { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "6d2eb93975c07b0169a3287efc1ae3b60cf52d8e", "status": "affected", "versionType": "git" }, { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "861ec73ce86e2ca18082cc7be4f140a5bbdf1428", "status": "affected", "versionType": "git" }, { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "f495808cdd6d9576965787cf6d9737d0b0e86b73", "status": "affected", "versionType": "git" }, { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "47ccbad210f48721c30d69d65b83dc9fff919ca9", "status": "affected", "versionType": "git" }, { "version": "2219a935963e5eeb19e5abfb99475fcc06bbb804", "lessThan": "9d34c9d660c3d0931d2cc749c46c47cf31f96e48", "status": "affected", "versionType": "git" } ] }, { "product": "Linux", "vendor": "Linux", "defaultStatus": "affected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/power/supply/bq24257_charger.c" ], "versions": [ { "version": "4.2", "status": "affected" }, { "version": "0", "lessThan": "4.2", "status": "unaffected", "versionType": "semver" }, { "version": "5.15.221", "lessThanOrEqual": "5.15.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.1.188", "lessThanOrEqual": "6.1.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.6.157", "lessThanOrEqual": "6.6.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.12.109", "lessThanOrEqual": "6.12.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.18.50", "lessThanOrEqual": "6.18.*", "status": "unaffected", "versionType": "semver" }, { "version": "7.2.4", "lessThanOrEqual": "7.2.*", "status": "unaffected", "versionType": "semver" }, { "version": "7.3", "lessThanOrEqual": "*", "status": "unaffected", "versionType": "original_commit_for_fix" } ] } ], "cpeApplicability": [ { "nodes": [ { "operator": "OR", "negate": false, "cpeMatch": [ { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "5.15.221" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.1.188" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.6.157" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.12.109" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.18.50" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "7.2.4" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "7.3" } ] } ] } ], "references": [ { "url": "https://git.kernel.org/stable/c/9d77fd7dd9a3ad57f7655c5264b503b85adbb7b8" }, { "url": "https://git.kernel.org/stable/c/a279e64c907f5638bb34cb8e2c9285798cf5f690" }, { "url": "https://git.kernel.org/stable/c/6d2eb93975c07b0169a3287efc1ae3b60cf52d8e" }, { "url": "https://git.kernel.org/stable/c/861ec73ce86e2ca18082cc7be4f140a5bbdf1428" }, { "url": "https://git.kernel.org/stable/c/f495808cdd6d9576965787cf6d9737d0b0e86b73" }, { "url": "https://git.kernel.org/stable/c/47ccbad210f48721c30d69d65b83dc9fff919ca9" }, { "url": "https://git.kernel.org/stable/c/9d34c9d660c3d0931d2cc749c46c47cf31f96e48" } ], "title": "power: supply: bq24257: fix use-after-free on remove", "x_generator": { "engine": "bippy-1.2.0" } } } }