Description
In the Linux kernel, the following vulnerability has been resolved: rapidio: clear mport->net when rio_add_net() fails rio_alloc_net() stores the newly allocated rio_net in mport->net before rio_scan_alloc_net() registers the device. If rio_add_net() fails, rio_scan_alloc_net() drops the device reference with put_device(), which releases the rio_net through the device release callback. However, mport->net is left pointing at the freed object. A later mport unregister path can then dereference the dangling mport->net pointer and may try to free the same rio_net again. Clear mport->net in the rio_add_net() failure path, matching the cleanup done for the destID table allocation failure path.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
4f3509cfcc02e9d757f2714bb7dbbeec35de6fa7 to < 24f60ebabeb8757cec8ec2f97660d521bc9147ecaffected181d4daaefb3bceeb2f2635ba9f3781eeda9e550 to < 6a760a53e73064735cdfa9e51c664983a89baf96affectedad82be4298a89a9ae46f07128bdf3d8614bce745 to < 3f00999e44d9984036a029dbad9d2afe94a674d0affectede6411c3b9512dba09af7d014d474516828c89706 to < 332591a245de978349a7558f8b20469951bb77ccaffectedc332f3e2df0fcae5a45fd55cc18902fb1e4825ca to < 75f0bc167b96bbbef8182b88308c732af82c8d83affectede842f9a1edf306bf36fe2a4d847a0b0d458770de to < 44a37264b26911e13d0a4f5630751c4157ed0354affectede842f9a1edf306bf36fe2a4d847a0b0d458770de to < 530a9d5ef831a0049dad9a6b2b92d02301352c38affectede842f9a1edf306bf36fe2a4d847a0b0d458770de to < b74030fbf187b43c1f85b66a7082e9946511cb5daffected6d22953c4a183d0b7fdf34d68c5debd16da6edc5affecteda0d069ccc475abaaa79c6368ee27fc0b5912bea8affected5.10.235 to < 5.10.270affected5.15.179 to < 5.15.221affected6.1.131 to < 6.1.188affected6.6.83 to < 6.6.157affected6.12.19 to < 6.12.110affected5.4.291 to < 5.5affected6.13.7 to < 6.14affected
Linux Linux
Default version status: affected
6.14affected0 to < 6.14unaffected5.10.270 to ≤ 5.10.*unaffected5.15.221 to ≤ 5.15.*unaffected6.1.188 to ≤ 6.1.*unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.52 to ≤ 6.18.*unaffected7.2.6 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/24f60ebabeb8757cec8ec2f97660d521bc9147ec ↗
- https://git.kernel.org/stable/c/6a760a53e73064735cdfa9e51c664983a89baf96 ↗
- https://git.kernel.org/stable/c/3f00999e44d9984036a029dbad9d2afe94a674d0 ↗
- https://git.kernel.org/stable/c/332591a245de978349a7558f8b20469951bb77cc ↗
- https://git.kernel.org/stable/c/75f0bc167b96bbbef8182b88308c732af82c8d83 ↗
- https://git.kernel.org/stable/c/44a37264b26911e13d0a4f5630751c4157ed0354 ↗
- https://git.kernel.org/stable/c/530a9d5ef831a0049dad9a6b2b92d02301352c38 ↗
- https://git.kernel.org/stable/c/b74030fbf187b43c1f85b66a7082e9946511cb5d ↗