In the Linux kernel, the following vulnerability has been resolved: net: atlantic: eliminate double free in error handling logic Driver has a logic leak in ring data allocation/free, where aq_ring_free could be called multiple times on same ring, if system is under stress and got memory allocation error. Ring pointer was used as an indicator of failure, but this is not correct since only ring data is allocated/deallocated. Ring itself is an array member. Changing ring allocation functions to return error code directly. This simplifies error handling and eliminates aq_ring_free on higher layer.
https://git.kernel.org/stable/c/d1fde4a7e1dcc4d49cce285107a7a43c3030878d
https://git.kernel.org/stable/c/c11a870a73a3bc4cc7df6dd877a45b181795fcbf
https://git.kernel.org/stable/c/b3cb7a830a24527877b0bc900b9bd74a96aea928
https://git.kernel.org/stable/c/0edb3ae8bfa31cd544b0c195bdec00e036002b5d