aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/hugetlbfs/inode.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c
index 59073e9f01a4..ed113ea17aff 100644
--- a/fs/hugetlbfs/inode.c
+++ b/fs/hugetlbfs/inode.c
@@ -842,9 +842,12 @@ static int hugetlbfs_error_remove_page(struct address_space *mapping,
842 struct page *page) 842 struct page *page)
843{ 843{
844 struct inode *inode = mapping->host; 844 struct inode *inode = mapping->host;
845 pgoff_t index = page->index;
845 846
846 remove_huge_page(page); 847 remove_huge_page(page);
847 hugetlb_fix_reserve_counts(inode); 848 if (unlikely(hugetlb_unreserve_pages(inode, index, index + 1, 1)))
849 hugetlb_fix_reserve_counts(inode);
850
848 return 0; 851 return 0;
849} 852}
850 853