Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: cxl/region: Resolve region deletion races Sungwoo noticed that the sysfs trigger to delete a region may try to delete a region multiple times. It also has no exclusion relative to the kernel releasing the region via CXL root device teardown. Instead of installing new cxl root devres actions per region, use the existing root decoder unregistration event to remove all remaining regions. An xarray of regions replaces a devres list of regions. This handles 3 separate issues with the old approach: 1/ sysfs users racing to delete the same region: no longer possible now that the regions_lock is held over the lookup and deletion. 2/ multiple actions triggering deletion of the same region: solved by erasing regions while holding @regions_lock, and only proceeding on successful erasure. 3/ userspace racing devres_release_all() to trigger the devres not found warning: solved by sysfs unregistration not requiring a release action
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 779dd20cfb56c510f89877cca45529fa9f8bc450 before 441250eea84608c6c2dbd7f00c61df32836ac97d; affected 779dd20cfb56c510f89877cca45529fa9f8bc450 before c478810c4ce7216261fc1b6ca5180adcda26b1a1; affected 779dd20cfb56c510f89877cca45529fa9f8bc450 before be44c1c04f85d7b7ac1c597a30b443bbd346acbd; affected 779dd20cfb56c510f89877cca45529fa9f8bc450 before 4dd86ca99ffcc413cbf79063fd9956ef54e0ca91 |
| Linux / Linux | affected 6.0; unaffected 0 before 6.0; unaffected 6.6.160 through 6.6.*; unaffected 6.12.114 through 6.12.*; unaffected 7.1.5 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.