{"api_version":"1","generated_at":"2026-10-29T10:31:27+00:00","cve":"CVE-2023-54079","urls":{"html":"https://cve.report/CVE-2023-54079","api":"https://cve.report/api/cve/CVE-2023-54079.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2023-54079","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2023-54079"},"summary":{"title":"power: supply: bq27xxx: Fix poll_interval handling and races on remove","description":"In the Linux kernel, the following vulnerability has been resolved:\n\npower: supply: bq27xxx: Fix poll_interval handling and races on remove\n\nBefore this patch bq27xxx_battery_teardown() was setting poll_interval = 0\nto avoid bq27xxx_battery_update() requeuing the delayed_work item.\n\nThere are 2 problems with this:\n\n1. If the driver is unbound through sysfs, rather then the module being\n   rmmod-ed, this changes poll_interval unexpectedly\n\n2. This is racy, after it being set poll_interval could be changed\n   before bq27xxx_battery_update() checks it through\n   /sys/module/bq27xxx_battery/parameters/poll_interval\n\nFix this by added a removed attribute to struct bq27xxx_device_info and\nusing that instead of setting poll_interval to 0.\n\nThere also is another poll_interval related race on remove(), writing\n/sys/module/bq27xxx_battery/parameters/poll_interval will requeue\nthe delayed_work item for all devices on the bq27xxx_battery_devices\nlist and the device being removed was only removed from that list\nafter cancelling the delayed_work item.\n\nFix this by moving the removal from the bq27xxx_battery_devices list\nto before cancelling the delayed_work item.","state":"PUBLISHED","assigner":"Linux","published_at":"2025-12-24 13:16:09","updated_at":"2026-08-04 10:19:27"},"problem_types":[],"metrics":[{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://git.kernel.org/stable/c/4c9615474fb0a41cfad658d78db3c9ec70912969","name":"https://git.kernel.org/stable/c/4c9615474fb0a41cfad658d78db3c9ec70912969","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/e85757da9091998276ff21a13915ac25229cc232","name":"https://git.kernel.org/stable/c/e85757da9091998276ff21a13915ac25229cc232","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/465d919151a1e8d40daf366b868914f59d073211","name":"https://git.kernel.org/stable/c/465d919151a1e8d40daf366b868914f59d073211","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/b12faeca0e819ea09051a705fef9df7ea7e9e18c","name":"https://git.kernel.org/stable/c/b12faeca0e819ea09051a705fef9df7ea7e9e18c","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/0c5f4cec759679c290720fbcf6bb81768e21c95b","name":"https://git.kernel.org/stable/c/0c5f4cec759679c290720fbcf6bb81768e21c95b","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/c00bc80462afc7963f449d7f21d896d2f629cacc","name":"https://git.kernel.org/stable/c/c00bc80462afc7963f449d7f21d896d2f629cacc","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/d952a1eaafcc5f0351caad5dbe9b5b3300d1d529","name":"https://git.kernel.org/stable/c/d952a1eaafcc5f0351caad5dbe9b5b3300d1d529","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/e98e5bebfcafc75a7b41192a607dfea5c1268afa","name":"https://git.kernel.org/stable/c/e98e5bebfcafc75a7b41192a607dfea5c1268afa","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-54079","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-54079","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db 4c9615474fb0a41cfad658d78db3c9ec70912969 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db 465d919151a1e8d40daf366b868914f59d073211 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db 0c5f4cec759679c290720fbcf6bb81768e21c95b git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db e85757da9091998276ff21a13915ac25229cc232 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db e98e5bebfcafc75a7b41192a607dfea5c1268afa git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db d952a1eaafcc5f0351caad5dbe9b5b3300d1d529 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db b12faeca0e819ea09051a705fef9df7ea7e9e18c git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db c00bc80462afc7963f449d7f21d896d2f629cacc git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 3.3","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 3.3 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.14.316 4.14.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.19.284 4.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.4.244 5.4.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.181 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15.114 5.15.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.31 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.3.5 6.3.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.4 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2023","cve_id":"54079","cve":"CVE-2023-54079","epss":"0.001440000","percentile":"0.041390000","score_date":"2026-08-06","updated_at":"2026-08-07 00:14:20"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/power/supply/bq27xxx_battery.c","include/linux/power/bq27xxx_battery.h"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"4c9615474fb0a41cfad658d78db3c9ec70912969","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"465d919151a1e8d40daf366b868914f59d073211","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"0c5f4cec759679c290720fbcf6bb81768e21c95b","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"e85757da9091998276ff21a13915ac25229cc232","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"e98e5bebfcafc75a7b41192a607dfea5c1268afa","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"d952a1eaafcc5f0351caad5dbe9b5b3300d1d529","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"b12faeca0e819ea09051a705fef9df7ea7e9e18c","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"},{"lessThan":"c00bc80462afc7963f449d7f21d896d2f629cacc","status":"affected","version":"8cfaaa811894a3ae2d7360a15a6cfccff3ebc7db","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/power/supply/bq27xxx_battery.c","include/linux/power/bq27xxx_battery.h"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"3.3"},{"lessThan":"3.3","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"4.14.*","status":"unaffected","version":"4.14.316","versionType":"semver"},{"lessThanOrEqual":"4.19.*","status":"unaffected","version":"4.19.284","versionType":"semver"},{"lessThanOrEqual":"5.4.*","status":"unaffected","version":"5.4.244","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.181","versionType":"semver"},{"lessThanOrEqual":"5.15.*","status":"unaffected","version":"5.15.114","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.31","versionType":"semver"},{"lessThanOrEqual":"6.3.*","status":"unaffected","version":"6.3.5","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"6.4","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"4.14.316","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"4.19.284","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.4.244","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.181","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15.114","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.31","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.3.5","versionStartIncluding":"3.3","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.4","versionStartIncluding":"3.3","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\npower: supply: bq27xxx: Fix poll_interval handling and races on remove\n\nBefore this patch bq27xxx_battery_teardown() was setting poll_interval = 0\nto avoid bq27xxx_battery_update() requeuing the delayed_work item.\n\nThere are 2 problems with this:\n\n1. If the driver is unbound through sysfs, rather then the module being\n   rmmod-ed, this changes poll_interval unexpectedly\n\n2. This is racy, after it being set poll_interval could be changed\n   before bq27xxx_battery_update() checks it through\n   /sys/module/bq27xxx_battery/parameters/poll_interval\n\nFix this by added a removed attribute to struct bq27xxx_device_info and\nusing that instead of setting poll_interval to 0.\n\nThere also is another poll_interval related race on remove(), writing\n/sys/module/bq27xxx_battery/parameters/poll_interval will requeue\nthe delayed_work item for all devices on the bq27xxx_battery_devices\nlist and the device being removed was only removed from that list\nafter cancelling the delayed_work item.\n\nFix this by moving the removal from the bq27xxx_battery_devices list\nto before cancelling the delayed_work item."}],"metrics":[{"cvssV3_1":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"providerMetadata":{"dateUpdated":"2026-08-04T09:17:32.821Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/4c9615474fb0a41cfad658d78db3c9ec70912969"},{"url":"https://git.kernel.org/stable/c/465d919151a1e8d40daf366b868914f59d073211"},{"url":"https://git.kernel.org/stable/c/0c5f4cec759679c290720fbcf6bb81768e21c95b"},{"url":"https://git.kernel.org/stable/c/e85757da9091998276ff21a13915ac25229cc232"},{"url":"https://git.kernel.org/stable/c/e98e5bebfcafc75a7b41192a607dfea5c1268afa"},{"url":"https://git.kernel.org/stable/c/d952a1eaafcc5f0351caad5dbe9b5b3300d1d529"},{"url":"https://git.kernel.org/stable/c/b12faeca0e819ea09051a705fef9df7ea7e9e18c"},{"url":"https://git.kernel.org/stable/c/c00bc80462afc7963f449d7f21d896d2f629cacc"}],"title":"power: supply: bq27xxx: Fix poll_interval handling and races on remove","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2023-54079","datePublished":"2025-12-24T13:06:11.956Z","dateReserved":"2025-12-24T13:02:52.514Z","dateUpdated":"2026-08-04T09:17:32.821Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2025-12-24 13:16:09","lastModifiedDate":"2026-08-04 10:19:27","problem_types":[],"metrics":{"cvssMetricV31":[{"source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":1.8,"impactScore":5.9}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2023","CveId":"54079","Ordinal":"1","Title":"power: supply: bq27xxx: Fix poll_interval handling and races on ","CVE":"CVE-2023-54079","Year":"2023"},"notes":[{"CveYear":"2023","CveId":"54079","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\npower: supply: bq27xxx: Fix poll_interval handling and races on remove\n\nBefore this patch bq27xxx_battery_teardown() was setting poll_interval = 0\nto avoid bq27xxx_battery_update() requeuing the delayed_work item.\n\nThere are 2 problems with this:\n\n1. If the driver is unbound through sysfs, rather then the module being\n   rmmod-ed, this changes poll_interval unexpectedly\n\n2. This is racy, after it being set poll_interval could be changed\n   before bq27xxx_battery_update() checks it through\n   /sys/module/bq27xxx_battery/parameters/poll_interval\n\nFix this by added a removed attribute to struct bq27xxx_device_info and\nusing that instead of setting poll_interval to 0.\n\nThere also is another poll_interval related race on remove(), writing\n/sys/module/bq27xxx_battery/parameters/poll_interval will requeue\nthe delayed_work item for all devices on the bq27xxx_battery_devices\nlist and the device being removed was only removed from that list\nafter cancelling the delayed_work item.\n\nFix this by moving the removal from the bq27xxx_battery_devices list\nto before cancelling the delayed_work item.","Type":"Description","Title":"power: supply: bq27xxx: Fix poll_interval handling and races on "}]}}}