In the Linux kernel, the following vulnerability has been resolved: mm/hugetlb: fix missing hugetlblock for resv uncharge There is a recent report on UFFDIOCOPY over hugetlb: https://lore.kernel.org/all/000000000000ee06de0616177560@google.com/ 350: lockdepassertheld(&hugetlblock); Should be an issue in hugetlb but triggered in an userfault context, where it goes into the unlikely path where two threads modifying the resv map together. Mike has a fix in that path for resv uncharge but it looks like the locking criteria was overlooked: hugetlbcgroupunchargefolio_rsvd() will update the cgroup pointer, so it requires to be called with the lock held.