CVE-2026-90150
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
pnfs/blocklayout: Fix device leaks on parse failure
bl_parse_concat() and bl_parse_stripe() allocate a child device array and then parse each child in turn. If parsing a child fails, the failed child is not counted in nr_children and the parent may be left with a children array that bl_free_device() will not release when nr_children is zero.
Release the failed child and the already parsed children before returning the error. Also make bl_free_device() release the child array whenever the children pointer is set, so that partially initialised concat or stripe devices are cleaned up correctly.
bl_parse_scsi() can also fail after assigning d->bdev_file and dropping the file reference. Clear the pointer after fput() so that an outer cleanup path does not put it again.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 5c83746a0cf2831d4b59f5cf99ef5fbf138564e4 < 8a2494964edac2a13e82441c2bf887548dc3be0b | affected |
| Linux | Linux | 5c83746a0cf2831d4b59f5cf99ef5fbf138564e4 < 1e1c36b206c659cf94c6755a1d821ed1babd32bc | affected |
| Linux | Linux | 5c83746a0cf2831d4b59f5cf99ef5fbf138564e4 < 23e4162405c456ce12c772d5882d306135e828ae | affected |
| Linux | Linux | 5c83746a0cf2831d4b59f5cf99ef5fbf138564e4 < c056f817e4200fb18079d5052c273a22f191ff0a | affected |
| Linux | Linux | 3.18 | affected |
| Linux | Linux | 0 < 3.18 | unaffected |
| Linux | Linux | 6.12.110 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.52 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.6 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/8a2494964edac2a13e82441c2bf887548dc3be0b
- https://git.kernel.org/stable/c/1e1c36b206c659cf94c6755a1d821ed1babd32bc
- https://git.kernel.org/stable/c/23e4162405c456ce12c772d5882d306135e828ae
- https://git.kernel.org/stable/c/c056f817e4200fb18079d5052c273a22f191ff0a
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.