diff options
-rw-r--r-- | fs/hugetlbfs/inode.c | 5 |
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 | ||