提交 17d21439 编写于 作者: L Liu Zixian

hugetlb: fix hugepage leakage

euleros inclusion
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I5OE36
CVE: NA

------------
Huge page should be released if read_actual_file failed.

---
v2: change pr_info to pr_err_ratelimited

Fixes:1af4fa6d("hugetlb: support private file map")
Signed-off-by: NLiu Zixian <liuzixian4@huawei.com>
上级 b1cd6a89
...@@ -4858,8 +4858,12 @@ static vm_fault_t hugetlb_no_page(struct mm_struct *mm, ...@@ -4858,8 +4858,12 @@ static vm_fault_t hugetlb_no_page(struct mm_struct *mm,
size_t page_size = huge_page_size(h); size_t page_size = huge_page_size(h);
ret = read_actual_file(page, vma, &off, page_size); ret = read_actual_file(page, vma, &off, page_size);
if (ret) if (ret) {
put_page(page);
pr_err_ratelimited("enhanced hugetlb mmap: read file failed\n");
ret = vmf_error(ret);
goto out; goto out;
}
} }
#endif #endif
__SetPageUptodate(page); __SetPageUptodate(page);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册