In the Linux kernel, the following vulnerability has been resolved: mm/huge_memory: Fix xarray node memory leak If xas_split_alloc() fails to allocate the necessary nodes to complete the xarray entry split, it sets the xa_state to -ENOMEM, which xas_nomem() then interprets as "Please allocate more memory", not as "Please free any unnecessary memory" (which was the intended outcome). It's confusing to use xas_nomem() to free memory in this context, so call xas_destroy() instead.
https://git.kernel.org/stable/c/c0c84962e297927ba57fd6ddc2bb000c9d149655
https://git.kernel.org/stable/c/95c8181b4947e000f3b9b8e5918d899fce77b93d
https://git.kernel.org/stable/c/69a37a8ba1b408a1c7616494aa7018e4b3844cbe