Description
In the Linux kernel, the following vulnerability has been resolved: net: fec: handle page_pool_dev_alloc_pages error The fec_enet_update_cbd function calls page_pool_dev_alloc_pages but did not handle the case when it returned NULL. There was a WARN_ON(!new_page) but it would still proceed to use the NULL pointer and then crash. This case does seem somewhat rare but when the system is under memory pressure it can happen. One case where I can duplicate this with some frequency is when writing over a smbd share to a SATA HDD attached to an imx6q. Setting /proc/sys/vm/min_free_kbytes to higher values also seems to solve the problem for my test case. But it still seems wrong that the fec driver ignores the memory allocation error and can crash. This commit handles the allocation error by dropping the current packet.
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
95698ff6177b5f1f13f251da60e7348413046ae4 to < eacdcc14f3c8d4c1447565521e792ddb3a67e08daffected95698ff6177b5f1f13f251da60e7348413046ae4 to < 8a0097db0544b658c159ac787319737712063a23affected95698ff6177b5f1f13f251da60e7348413046ae4 to < 1425cb829556398f594658512d49292f988a2ab0affected95698ff6177b5f1f13f251da60e7348413046ae4 to < 001ba0902046cb6c352494df610718c0763e77a5affected
Linux Linux
Default version status: affected
6.1affected0 to < 6.1unaffected6.1.167 to ≤ 6.1.*unaffected6.6.74 to ≤ 6.6.*unaffected6.12.11 to ≤ 6.12.*unaffected6.13 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/eacdcc14f3c8d4c1447565521e792ddb3a67e08d ↗
- https://git.kernel.org/stable/c/8a0097db0544b658c159ac787319737712063a23 ↗
- https://git.kernel.org/stable/c/1425cb829556398f594658512d49292f988a2ab0 ↗
- https://git.kernel.org/stable/c/001ba0902046cb6c352494df610718c0763e77a5 ↗
- https://cert-portal.siemens.com/productcert/html/ssa-082556.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-019113.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-457936.html ↗