shmem: add huge pages support
[cascardo/linux.git] / mm / huge_memory.c
index cabd53d..0f58460 100644 (file)
@@ -3316,6 +3316,8 @@ static void __split_huge_page(struct page *page, struct list_head *list,
                if (head[i].index >= end) {
                        __ClearPageDirty(head + i);
                        __delete_from_page_cache(head + i, NULL);
+                       if (IS_ENABLED(CONFIG_SHMEM) && PageSwapBacked(head))
+                               shmem_uncharge(head->mapping->host, 1);
                        put_page(head + i);
                }
        }