{"id":"CVE-2026-45914","summary":"Revert \"hwmon: (ibmpex) fix use-after-free in high/low store\"","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nRevert \"hwmon: (ibmpex) fix use-after-free in high/low store\"\n\nThis reverts commit 6946c726c3f4c36f0f049e6f97e88c510b15f65d.\n\nJean Delvare points out that the patch does not completely\nfix the reported problem, that it in fact introduces a\n(new) race condition, and that it may actually not be needed in\nthe first place.\n\nVarious AI reviews agree. Specific and relevant AI feedback:\n\n\"\nThis reordering sets the driver data to NULL before removing the sensor\nattributes in the loop below.\n\nibmpex_show_sensor() retrieves this driver data via dev_get_drvdata() but\ndoes not check if it is NULL before dereferencing it to access\ndata-\u003esensors[].\n\nIf a userspace process reads a sensor file (like temp1_input) while this\ndelete function is running, could it race with the dev_set_drvdata(...,\nNULL) call here and crash in ibmpex_show_sensor()?\n\nWould it be safer to keep the original order where device_remove_file() is\ncalled before clearing the driver data? device_remove_file() should wait\nfor any active sysfs callbacks to complete, which might already prevent the\nuse-after-free this patch intends to fix.\n\"\n\nRevert the offending patch. If it can be shown that the originally reported\nalleged race condition does indeed exist, it can always be re-introduced\nwith a complete fix.","modified":"2026-07-08T08:13:41.619213868Z","published":"2026-05-27T12:17:29.426Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45914.json","cna_assigner":"Linux"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/05112ba67c824ab416cd54307c0b50aba9f0047a"},{"type":"WEB","url":"https://git.kernel.org/stable/c/14a38784e09aebc21207dc32fffa05247fc3dd64"},{"type":"WEB","url":"https://git.kernel.org/stable/c/894d9c7aab68fd0c70c78b1d03c8fa589fb0f67d"},{"type":"WEB","url":"https://git.kernel.org/stable/c/8bde3e395a85017f12af2b0ba5c3684f5af9c006"},{"type":"WEB","url":"https://git.kernel.org/stable/c/914b47c9b824d3d74f31c764163edf93302100b1"},{"type":"WEB","url":"https://git.kernel.org/stable/c/efd68429f23fb4015b0ebc2392334059e06fad18"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f448acd86835a650f9ea83460b9ca347d3aafba5"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45914.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-45914"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"3ce9b7ae9d4d148672b35147aaf7987a4f82bb94"},{"fixed":"05112ba67c824ab416cd54307c0b50aba9f0047a"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"533ead425f8109b02fecc7e72d612b8898ec347a"},{"fixed":"efd68429f23fb4015b0ebc2392334059e06fad18"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"fa37adcf1d564ef58b9dfb01b6c36d35c5294bad"},{"fixed":"f448acd86835a650f9ea83460b9ca347d3aafba5"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"68d62e5bebbd118b763e8bb210d5cf2198ef450c"},{"fixed":"914b47c9b824d3d74f31c764163edf93302100b1"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"5aa2139201667c1f644601e4529c4acd6bf8db5a"},{"fixed":"14a38784e09aebc21207dc32fffa05247fc3dd64"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"6946c726c3f4c36f0f049e6f97e88c510b15f65d"},{"fixed":"894d9c7aab68fd0c70c78b1d03c8fa589fb0f67d"},{"fixed":"8bde3e395a85017f12af2b0ba5c3684f5af9c006"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"5.10.248"},{"fixed":"5.10.252"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"6.1.160"},{"fixed":"6.1.165"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"6.6.120"},{"fixed":"6.6.128"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"6.12.64"},{"fixed":"6.12.75"}]},{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"6.18.3"},{"fixed":"6.18.14"}]}],"versions":["v5.10.251","v5.10.250","v5.10.249","v5.10.248","v6.1.164","v6.1.163","v6.1.162","v6.1.161","v6.1.160","v6.6.127","v6.6.126","v6.6.125","v6.6.124","v6.6.123","v6.6.122","v6.6.121","v6.6.120","v6.12.74","v6.12.73","v6.12.72","v6.12.71","v6.12.70","v6.12.69","v6.12.68","v6.12.67","v6.12.66","v6.12.65","v6.12.64","v6.18.13","v6.18.12","v6.18.11","v6.18.10","v6.18.9","v6.18.8","v6.18.7","v6.18.6","v6.18.5","v6.18.4","v6.18.3"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-45914.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.10.252"}]},{"type":"ECOSYSTEM","events":[{"introduced":"5.11.0"},{"fixed":"6.1.165"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.2.0"},{"fixed":"6.6.128"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.7.0"},{"fixed":"6.12.75"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.14"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"6.19.4"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-45914.json"}}],"schema_version":"1.7.5"}